- package com.huawei.test;
- import java.io.FilePermission;
- public class JAVASecurityManagerTest {
- public static void main(String[] args) {
- setSecurityManagerForApp();
- }
- public static void setSecurityManagerForApp(){
- System.out.println(System.getSecurityManager());
- SecurityManager safeManager = System.getSecurityManager();
- safeManager.checkPermission(new FilePermission("d:\\","read"));
- System.out.println("hah");
- }
- }
package com.huawei.test;
import java.io.FilePermission;
public class JAVASecurityManagerTest {
public static void main(String[] args) {
setSecurityManagerForApp();
}
public static void setSecurityManagerForApp(){
System.out.println(System.getSecurityManager());
SecurityManager safeManager = System.getSecurityManager();
safeManager.checkPermission(new FilePermission("d:\\","read"));
System.out.println("hah");
}
}
2. 授权文件my.policy代码:
- grant{
- permission java.io.FilePermission "<<ALL FILES>>","read";
- };
grant{
permission java.io.FilePermission "<<ALL FILES>>","read";
};
3. 如果在eclipse下进行测试,需要把VM arguments参数设置如下:
- -Djava.security.manager -Djava.security.policy=bin/res/my.policy
-Djava.security.manager -Djava.security.policy=bin/res/my.policy
最后, 这里我的理解是:首先给系统指定安全管理器,默认的java.lang.SecurityManager,并为它指定安全策略为my.policy中的内容,这里路径我给出的为相对路径,你的相对路径需要自己设置,或者设为绝对路径也是可以的例如D:/my.policy也行。