6

我不想修改我的 java 主目录中的任何内容,但是,我担心有时我的默认 java.policy 文件可能过于宽松。当我使用该选项运行 java 时,有没有办法让我使用指定的策略文件作为唯一的策略文件-Djava.security.manager

如果我添加一个-Djava.security.policy=myPolicy.policy选项,除了默认策略文件之外,它还会使用我的策略文件——这很糟糕,因为看起来默认策略文件中授予的所有权限仍然被授予。

4

1 回答 1

13

Java SecurityManager 的一个常见错误

  • 使用 SecurityManager 和默认 Java 安全策略运行,即 $JAVA_HOME/jre/lib/security/java.policy:

    java -Djava.security.manager Main

  • 要使用 SecurityManager 并且仅使用您的自定义安全策略(忽略默认的 java 安全策略)运行:

    java -Djava.security.manager -Djava.security.policy==security.policy Main

  • 首先使用 SecurityManager 和默认 java 安全策略运行,然后是您的自定义安全策略:

    java -Djava.security.manager -Djava.security.policy=security.policy Main

  • 如果您不想要 SecurityManager,那么只需省略 java.security.policy 以避免任何混淆。

于 2012-08-18T20:27:11.927 回答