gpt4 book ai didi

java - 限制 java 只执行签名的 jar?

转载 作者:塔克拉玛干 更新时间:2023-11-02 07:51:25 24 4
gpt4 key购买 nike

Java jar 可以使用 JDK jarsigner 工具进行签名。这与 policytool 一起,似乎只允许您在运行时向 jar 添加权限。我想要一个默认的“撤销运行权限”。是否有可能使 java 以仅允许运行由特定证书集签名的 jar 文件的方式进行白名单?

最佳答案

据我了解,这是在您可以控制的计算机上。使用

 java -Djava.security.manager YourApplication

启动应用程序时。这将安装可以通过 policy files 配置的默认安全管理器.策略文件允许按行配置每个签名者或每个代码库的权限

  grant signedBy "me" {
permission java.io.FilePermission "/home/me/*", "read,write";
};

在各种可能的权限之间,我目前没有看到“完全运行”的权限,但您似乎可以完全禁用网络和文件系统访问。

如果您有可能运行自己的外部应用程序作为决策者(启动或不启动),您可以验证代码中的签名为 already discussed .

此外,您可以使用 -verify 开关围绕 jarsigner 编写一个包装器,如文档中所述 here :

jarsigner -verify -keystore mystore hackerApplication.jar 

并使用一些类似 bash 的包装器在输出中捕获“smk”。

关于java - 限制 java 只执行签名的 jar?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14304771/

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