我们有一些自签名的遗留javaws应用程序。因此,在启用部署规则集后,我们尝试使用java 1.7.0_51中的javaws启动它们。应用程序仅在第一次启动时。在他们第一次之后,他们未能发布关于自签名罐子的错误。但是,应用程序将在清除缓存后启动。
从DRS文档中,如果启用DRS,似乎不会阻止自签名jar。但这不是上面观察到的行为。对我来说,这看起来像一个bug。请确认并告知我们如何启用启用了DRS的旧应用程序,并且不会在每次启动时清除缓存。
注意:只有“高”或“非常高”的安全设置才能观察到这一点。
答案 0 :(得分:0)
尝试更新Java Version Java 8.0
答案 1 :(得分:0)
我发现了问题,并为面临同样问题的任何人提供了解决方案。
问题是我有一个ruleset.xml文件,其中包含一个IP地址匹配规则。在第二次启动期间,从缓存中挑选罐子,因此与IP地址规则不匹配。解决方案是使规则与用于签署应用程序jar的证书相匹配。
现在ruleset.xml中的规则看起来像
<ruleset version="1.0+">
<rule>
<id>
<certificate hash="9208E7206B4BD02D891385A6162E58F5FA67B4B64EBF92A87A9C2DC" />
</id>
<action permission="run" />
</rule>
</ruleset>
有关获取哈希值的步骤,请参阅Deployment Rule Set documentation。