启动
默认情况下,Java的安全模型是不启用的。为了使用Java的安全模型,需要通过初始化安全管理器(SecurityManager)来启用Java安全模型。
- 编码式初始化SecurityManager
// 获取安全管理器,如果安全管理器未安装,则返回null
SecurityManager manager = System.getSecurityManager();
if (manager == null) {
// 安装并初始化安全管理器
System.setSecurityManager(new SecurityManager());
}
- JVM启动参数初始化
-Djava.security.manager
没有安装安全管理器的情况下,调用System.getSecurityManager()返回的是null,即可根据 System.getSecurityManager() 返回结果是否为null来判断Java安全模型有没有启用。
安全策略
当启用Java安全模式时,Java默认的安全策略文件为 ${JAVA_HOME}/jre/lib/security/java.policy
可以用JVM启动参数指定安全策略文件
-Djava.security.policy=/Users/developmac/workspace/develop/config/java.policy
使用
SecurityManager 提供了一系列供用户调用的API来做权限检查。SecurityManager的典