全局是否可以接受并最终存储安全管理员的支票?
给出以下代码行:
public static final boolean SEC_ON = (System.getSecurityManager() != null);
将它放在库中并在JVM的整个生命周期内重用结果是否可以接受?
为什么呢?或者为什么不呢?
[update] Java EE-JSP规范的参考实现中存在类似的代码。任何使用它的app server / servlet容器都不支持SecurityManager的动态配置。
答案 0 :(得分:1)
没有。如果最初不存在,可以随时安装安全管理器。
答案 1 :(得分:1)
由于安全管理器可以在JVM的生命周期内随时更改,因此这不是一个好习惯。如果他们需要方便的快捷方式,他们应该使用如下方法:
public static boolean isSecurityOn() {
return (System.getSecurityManager() != null);
}
答案 2 :(得分:0)
在向主题(https://java.net/projects/javaee-spec/lists/users/archive/2013-08/message/8)请求Java EE用户组之后,他们的立场似乎是不做出是否可以这样做的决定。
所以,遗憾的是,虽然我们可能希望答案是“你不应该这样做”,但现实是你不能依赖这个假设,因为某人已经并且可能会继续这样做。