Java 7未签名小程序权限1.7.0_45

Java 7未签名小程序权限1.7.0_45,java,permissions,applet,unsigned,Java,Permissions,Applet,Unsigned,我们有一个小程序,它需要特定的权限,我们对其进行签名并授予所有权限。 但在开发时,我们使用未签名的小程序。 我们在用户的主目录中的.java.policy文件中设置所有权限 这已在1.7.0_45(或可能在_40)中停止工作,因为未签名的小程序不再具有额外的权限。 我们看到这样一个错误: 原因:java.security.AccessControlException:拒绝访问(“java.util.PropertyPermission”“OurCustomSystemProperty”“read

我们有一个小程序,它需要特定的权限,我们对其进行签名并授予所有权限。
但在开发时,我们使用未签名的小程序。
我们在用户的主目录中的.java.policy文件中设置所有权限

这已在1.7.0_45(或可能在_40)中停止工作,因为未签名的小程序不再具有额外的权限。
我们看到这样一个错误:
原因:java.security.AccessControlException:拒绝访问(“java.util.PropertyPermission”“OurCustomSystemProperty”“read”)

原因
Sun已在1.7.0_45或40中更改了未签名小程序的安全行为。
他们现在创建并设置了一个新的部署属性:

deployment.security.use.user.home.java.policy=false
这意味着默认情况下会忽略用户的.java.policy文件


分辨率

请看下面我的答案。

分辨率

要么:

A.编辑deployment.properties并将上述属性设置为true
其路径的格式为:C:\Users\USERNAME\AppData\LocalLow\Sun\Java\Deployment\Deployment.properties
在文件中的任意位置添加一行,如下所示:

deployment.security.use.user.home.java.policy=true

B.编辑JRE的central java.policy文件,并向小程序授予所有权限
其路径的形式为:C:\Program Files(x86)\Java\jre7\lib\security\Java.policy


请查看问题的答案,或者我可以编辑它,使答案在这里(假设我有足够的代表)如果有足够的时间,您可以输入答案作为答案,并接受它作为答案。这将是最好的行动方针。(如果我在查看搜索结果,我通常会跳过没有答案或没有被接受答案的问题的点击。)好的可以-或者你可以投票给我,我现在就可以;]谢谢不,我会耐心的。:)顺便说一句,我通常不会投票表决一个问题,直到有一个被接受的答案在线程上-以'解决'它,或证明它可以解决。;)
deployment.security.use.user.home.java.policy=true
不工作。第二个选项工作正常,但在处理全球用户使用的应用程序时无效。检查我的SOT:尝试在插件Java控制台中按“s”,将全部内容复制到文本编辑器中,然后搜索“策略”。deployment.security.use.user.home.java.policy是否出现在其中?PS在deployment.properties中进行设置对web用户也没有多大好处?这个回答在IMO中不是一个解决方案。它不是一个解决方案,因为更改策略文件不是我建议开发人员做的事情,更不用说最终用户了。它充满了危险。(我在一个将此问题链接为重复问题的线程上发布了类似的评论,但我认为最好在此处添加警告。)我们只在开发时遇到此问题,因此在这种情况下调整deployment.properties就可以了!