0

我有一个 JApplet,我想授予它读写打印等权限。此小程序仅从本地文件系统加载

我一直在阅读 Java 教程的控制小程序部分,并成功创建了一个策略文件,授予权限并指定代码库 http://docs.oracle.com/javase/tutorial/security/tour1/index.html

为了让示例小程序成功写入本地系统,我必须将此行添加到 java.security 文件中。policy.url.3=file:/home/susanj/test/examplepolicy

问题是,如何通过代码实现相同的结果?

我假设您从 Policy 类开始 http://docs.oracle.com/javase/6/docs/api/java/security/Policy.html#getInstance%28java.lang.String,%20java.security.Policy.Parameters %29

使用任一 getInstance 方法创建新策略

政策。getInstance(字符串类型,Policy.Parameters 参数)

政策。getInstance(字符串类型,Policy.Parameters 参数,Provider 提供者)

政策。getInstance(字符串类型,Policy.Parameters 参数,字符串提供程序)

并通过策略添加。setPolicy (Policy p) 方法然后使用Policy。刷新();

不幸的是,它似乎与 getInstance 方法分崩离析,事情开始变得相当混乱,我需要知道的是,我需要使用什么类型的策略参数作为参数来为我的小程序授予完全权限。

此小程序不是从 Internet 下载的,它是桌面应用程序的一部分,因此我可以在加载小程序之前以完全权限运行类/jar 文件。我假设您可以在小程序加载之前以这种方式设置策略文件?

我假设这实际上是正确的方法。

问候

布雷特

4

1 回答 1

1

如果您可以从沙箱中修改策略,那将是一个非常糟糕的主意……这听起来像是您正在尝试做的事情。

通读设置策略文件以授予所需权限

您基本上需要先更新 Java 默认实例中的 Policy 文件,然后才能运行 Applet。

或者你可以签名。

于 2012-08-16T23:14:18.927 回答