簡體   English   中英

已簽名的Java Applet訪問被拒絕java.io.FilePermission讀取

[英]Signed Java Applet access denied java.io.FilePermission read

我為電子簽名創建了一個Java applet。 當我在ide(intelliJ)上運行時,Applet可以正常運行並完美運行。 但是,當我將項目部署到.jar文件並嘗試在瀏覽器(firefox)上運行時,出現了一些錯誤,表明.jar不可信。 然后我做了一些研究,並用jarsigner簽名了我的applet。 我遵循了以下步驟:


  • keytool -genkey -keyalg rsa -alias MyCert

  • keytool -certreq -alias MyCert

  • jarsigner C:\\ TestApplet.jar MyCert

在oracle網站上也嘗試了命令。 鏈接到這里


在我簽署了applet錯誤之后,我可以運行applet。 但是,當我嘗試對文件進行簽名時, 出現一個錯誤,提示小程序沒有權限訪問證書存儲文件夾 錯誤是:

java.security.AccessControlException:訪問被拒絕(“ java.io.FilePermission”“ C:\\ Users \\ ChooseClick.sertifikadeposu”“讀取”)

我找到了解決方案。 為了能夠在java中訪問文件或任何其他受限制的操作,必須使用prilivaged塊:

    AccessController.doPrivileged(new PrivilegedAction() {
    public Object run() {
       //actions that need permission goes here

        return null;
    }
  });

您可以在任何功能中使用此塊。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM