赋予JApplet对本地文件系统的读写访问权限

我有一个JApplet,我想给读写打印等权限。 此applet仅从本地文件系统加载

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

为了让示例applet成功写入本地系统,我必须将此行添加到java.security文件中。 policy.url.3 =文件:/首页/苏沙尼/测试/ 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 (String type,Policy.Parameters params)

政策。 getInstance (String type,Policy.Parameters params,Provider provider)

政策。 getInstance (String type,Policy.Parameters params,String provider)

并通过政策添加它。 setPolicy (Policy p)方法然后使用Policy。 refresh ();

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

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

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

问候

布雷特

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

阅读设置策略文件以获得所需的权限 。

在运行Applet之前,您基本上需要在Java的默认实例中更新Policy文件。

或者你可以签名。

  • 如何使用RSA签名证书签署小程序
  • 是否可以免费签署一个Java小程序?