首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何避免来自第三方库的混合代码警告加载二进制资源?

如何避免来自第三方库的混合代码警告加载二进制资源?
EN

Stack Overflow用户
提问于 2012-01-17 20:58:48
回答 1查看 4K关注 0票数 3

我正在开发一个巨大的小程序,装载超过100个罐子,其中50个是第三方。他们都是签名和信任的。

不幸的是,其中一个openmap加载二进制文件(形状和层文件)。我不能签署这些文件(AFAIK),因为它们不是jars,没有清单,等等。

由于jar加载二进制文件,所以在运行时我会得到混合代码警告。为了避免这种情况,我想出的唯一办法是将每个.jar标记为“可信库:真”。更改所有.jars上的清单意味着所有的.jars都必须重新签名,这是一个政治问题。

我知道这个对话框可以在java控制面板中禁用。我在找另一个解决办法。天真地,我希望能够以某种方式标记openmap或我的jar,它使用openmap或jar被信任(或不惜一切代价)加载这些文件,而无需警告。我试着让openmap成为一个可信任的库,这并不能消除错误。如果我尝试让使用openmap的jar成为受信任的库,那么我就会遇到问题,因为我的jar依赖于其他jar,而且jar中的类定义无法加载,因为这些依赖类位于另一个类加载器中。

编辑:

这似乎会触发对话框(单击“是,阻止可能不安全”以获取此日志语句)

安全性:http://localhost:8080/app/client-lib/:java.lang.SecurityException中的资源名"http://localhost:8080/maps/politicalWorld/vmap_political_world/vmap_area_thin.shp“:受信任的加载程序试图从http://localhost:8080/app/client-lib/

加载沙箱资源

EN

回答 1

Stack Overflow用户

发布于 2012-01-18 00:57:57

如果您将文件放入jars中,将其作为资源进行签名和加载,这应该是可以的。您可能在通过代码库中的URL加载它们时遇到问题(因为它们不可能与applet的一部分区分开来)。但是,如果将它们从代码库中移出,请记住,它们可能被恶意的东西所取代,因此不能信任它们。

我建议不要添加Trusted-Library: true,因为这不太可能是安全的。不是说任何代码都是恶意的,而是它不会被设计成被安全地用作库。

此外,禁用混合代码警告会打开客户端机器,以攻击混合代码警告应该减轻的攻击。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8901664

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档