我有一個JApplet,我想給讀寫print等權限。 這個小程序只能從本地文件系統給一個JApplet讀寫訪問本地文件系統
我已經通過Java教程的控制小程序的部分閱讀加載並已成功創建了政策文件,給予權限和指定的代碼庫 http://docs.oracle.com/javase/tutorial/security/tour1/index.html
要得到示例applet成功寫入本地系統我必須將此行添加到java.security文件。 policy.url.3 = file:/ home/susanj/test/examplepolicy
問題是,如何通過代碼實現相同的結果?
創建新的策略與任一getInstance方法
政策。 getInstance(String type,Policy.Parameters params)
策略。 getInstance(String type,Policy.Parameters params,Provider provider)
政策。 getInstance(String type,Policy.Parameters params,String provider)
並通過Policy添加它。 setPolicy(策略p)方法 然後使用 策略。 refresh();
不幸的是,它似乎與getInstance方法崩潰,事情開始變得非常混亂,我需要知道的是什麼類型,我需要使用策略參數作爲參數給我的小程序的完整權限。
此applet不從互聯網上下載,它是桌面應用程序的一部分,所以我可以在applet加載之前運行具有完全特權的class/jar文件。我假設你可以在applet加載之前以這種方式設置策略文件?
我假設這實際上是正確的方法。
問候
佈雷特
此applet是不是從互聯網上下載,它是一個桌面application.I可以在小程序加載之前加載類/ JAR文件的一部分。我假設你可以在applet加載之前設置策略文件? – BMac 2012-08-16 23:26:20
不應該有很大的不同,Applet在受限安全模式下運行,這就是默認情況下的工作方式。您需要啓用它以「無保護」模式運行一些方式。最好的方法是更新默認的策略文件,或者爲應用程序提供一個不同的東西,例如'-Djava.security.policy = applet.policy' – MadProgrammer 2012-08-16 23:29:27
eclipse IDE如何讓applet以完整的權限運行? – BMac 2012-08-16 23:32:18