配置 Java 2 安全性中的静态策略文件

通过配置静态策略文件,将为所有 Java™ 程序授予必需的许可权。

开始之前

Java 2 安全性使用若干策略文件,为每个 Java 程序确定授予的许可权。

请参阅有关 Java 2 安全策略文件的主题,以获取 WebSphere® Application Server 支持的可用策略文件列表。

WebSphere Application Server 支持两种类型的策略文件:动态策略文件和静态策略文件。静态策略文件提供缺省许可权。动态策略文件提供应用程序许可权。
表 1. 策略文件. 此表列示了策略文件。
策略文件名 描述
java.policy 包含节点中所有 Java 程序的缺省许可权。此文件很少更改。
server.policy 包含节点中所有 WebSphere Application Server 程序的缺省许可权。此文件很少有更新。
client.policy 包含节点中所有 Applet 和客户机容器的缺省许可权。
静态策略文件不是存储库和文件复制服务管理的配置文件。对此文件的更改是本地的,而不会复制到其他机器。

过程

  1. 标识要更新的策略文件。
    • 如果仅应用程序需要许可权,那么更新动态策略文件。请参阅配置 Java 2 安全策略文件
    • 如果仅 Applet 和客户机容器需要许可权,那么更新 client.policy 文件。请参阅client.policy 文件许可权
    • 如果仅 WebSphere Application Server(服务器、代理程序、管理器和应用程序服务器)需要许可权,请更新 server.policy 文件。请参阅server.policy 文件许可权
    • 如果 Java 虚拟机 (JVM) 上运行的所有 Java 程序都需要许可权,请更新 java.policy 文件。请参阅java.policy 文件许可权
  2. 停止并重新启动 WebSphere Application Server。

结果

已将必需的许可权授予与重新启动的 JVM 一起运行的所有 Java 程序。

示例

如果节点上的 Java 程序需要许可权,那么策略文件需要更新。如果需要许可权的 Java 程序不是企业应用程序的一部分,请更新静态策略文件。缺少许可权将导致发生 java.security.AccessControlException 异常。缺少的许可权在异常数据中列示。
[AIX Solaris HP-UX Linux Windows][z/OS]例如:
java.security.AccessControlException: access denied (java.io.FilePermission 
C:/WAS_HOME/lib/mail-impl.jar read)
[IBM i]例如:
java.security.AccessControlException: access denied (java.io.FilePermission 
app_server_root/lib/mail-impl.jar read)

当 Java 程序接收此异常,并且添加此许可权被认为是正当时,请将许可权添加到适当的策略文件。

[AIX Solaris HP-UX Linux Windows][z/OS]例如:
grant codeBase "file:user_client_installed_location" {
  permission java.io.FilePermission 
  "C:/WAS_HOME/lib/mail-impl.jar", 
  "read";
};
[IBM i]例如:
grant codeBase "file:user_client_installed_location" {
  permission java.io.FilePermission 
  "app_server_root/Base/lib/mail-impl.jar", 
  "read";
};

要确定是否添加许可权,请参阅“Java 2 安全性的访问控制异常”。


指示主题类型的图标 任务主题



时间戳记图标 最近一次更新时间: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tsec_staticpolicy
文件名:tsec_staticpolicy.html