根据安全策略限制动态加载的类和jar

时间:2010-04-13 04:30:34

标签: java security

我想动态加载一组jar或类(即在运行时加载的插件)。同时,我想限制这些插件在JVM中能够做什么。对于测试用例,我想将它们限制在几乎所有内容中(现在我只是允许读取一个System.getProperty值)。

我目前正在使用安全策略文件,但是我在代码库中为一个文件夹或包指定策略时遇到困难,而不是另一个。

以下是我的政策现状:

grant codeBase "file:/home/max/programming/java/plugin/plugins/" {
    permission java.util.PropertyPermission "java.version", "read";
};
grant codeBase "file:/home/max/programming/java/plugin/api/" {
    permission java.security.AllPermission;
};

其中(出于测试目的),插件包和文件夹中的所有文件都受到限制,但api文件夹中的类不受限​​制。这可能吗?我是否必须创建自定义类加载器?有没有更好的方法来做这件事?

感谢。

1 个答案:

答案 0 :(得分:0)

这个答案解决了我的问题: Sandbox against malicious code in a Java application