我为电子签名创建了一个java applet。当我在ide(intelliJ)上运行时,Applet运行正常并且工作正常。但是当我将项目部署到.jar文件并尝试在浏览器(firefox)上运行时,我得到一些错误,说.jar是不可信的。然后我做了一些研究并用jarsigner签了我的小程序。我采取了以下步骤:
keytool -genkey -keyalg rsa -alias MyCert
keytool -certreq -alias MyCert
还在oracle网站上尝试了命令。link here
我签署了我的applet错误后,我可以运行我的applet。但是当我尝试签署文件时,我收到一条错误消息,说applet没有permision来访问cert store文件夹。错误是:
java.security.AccessControlException:拒绝访问(" java.io.FilePermission"" C:\ Users \ ChooseClick.sertifikadeposu""阅读" )
答案 0 :(得分:0)
我找到了解决方案。要能够在java上访问文件或任何其他受限操作,您必须使用prilivaged blocks:
AccessController.doPrivileged(new PrivilegedAction() {
public Object run() {
//actions that need permission goes here
return null;
}
});
您可以在任何功能中使用此块。