SDK 安全策略文件
IBM SDK 提供有限和无限强度的 JCE 管辖区域策略文件。 您可以控制要使用的策略文件。
策略文件由 SecurityManager 类用于授予对 Java 许可权的访问权。 使用安全管理器运行 Java 应用程序时,如果需要访问资源,但未由策略文件定义,那么将拒绝访问。
注意: Security Manager 在 Java 17 中已被废弃,并将在未来的版本中移除。 没有人可以替代安全管理员。 讨论情况和替代方案见JEP 411。
您可以使用策略文件来定制所需的密钥强度。 这种灵活性很有用,因为加密软件的进出口控制规则因国家而异。
策略文件是分布在 .jar 文件中的平面文本文件。 包含以下策略文件:
- 无限制的管辖区域策略文件
- 这些策略文件不包含对密码强度或算法的限制。
- conf/security/policy/unlimited/default_US_export.policy
- conf/security/policy/unlimited/default_local.policy
- 受限管辖区域策略文件
- 这些策略文件包含更多受限的加密强度。
- conf/security/policy/limited/default_US_export.policy
- conf/security/policy/limited/default_local.policy
- conf/security/policy/limited/exempt_local.policy
policy 目录下的每个子目录都包含完整的策略配置。 您可以添加子目录以反映导入或导出控制需求。 在子目录中,有效策略是与文件名模式 default_*.policy匹配的文件中的授权语句的组合最小许可权。 至少需要一个授权语句。 有效免除策略是与文件名模式 exempt_*.policy匹配的文件中的 GRANT 语句的组合最小许可权。 豁免授予是可选的。
要使用除缺省值以外的策略配置,请将 conf/security/java.security 文件中的 crypto.policy 属性设置为相关子目录的值。 例如,使用以下设置来使用受限策略文件:
crypto.policy=limited有关这些文件及其语法的更多信息,请参阅OpenJDK文档中的加密强度配置和默认策略实现以及策略文件语法。