gpt4 book ai didi

java - 签名的 Java Applet 访问被拒绝 java.io.FilePermission 读取

转载 作者:太空宇宙 更新时间:2023-11-04 13:02:16 25 4
gpt4 key购买 nike

我创建了一个用于电子签名的java小程序。当我在 ide (intelliJ) 上运行时,Applet 运行正常并且工作完美。但是当我将项目部署到 .jar 文件并尝试在浏览器(firefox)上运行时,我收到一些错误,指出 .jar 不受信任。然后我做了一些研究并用 jarsigner 签署了我的小程序。我按照以下步骤操作:

<小时/>
  • keytool -genkey -keyalg rsa -alias MyCert

  • keytool -certreq -alias MyCert

  • jarsigner C:\TestApplet.jar MyCert

还尝试了 Oracle 网站上的命令。 link here

<小时/>

在我签署小程序后,错误消失了,我可以运行我的小程序。但是,当我尝试签署文件时,我收到一条错误消息,指出小程序没有访问证书存储文件夹的权限。错误是:

java.security.AccessControlException:访问被拒绝(“java.io.FilePermission”“C:\Users\ChooseClick.sertifikadeposu”“读取”)

最佳答案

我找到了解决方案。为了能够访问 java 中的文件或任何其他受限操作,您必须使用特权 block :

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

return null;
}
});

您可以在任何函数中使用此 block 。

关于java - 签名的 Java Applet 访问被拒绝 java.io.FilePermission 读取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34830167/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com