在文件中对密码进行编码

密码编码的目的是阻止偶然查看服务器配置和属性文件中的密码。使用 PropFilePasswordEncoder 实用程序对存储在属性文件中的密码进行编码。WebSphere® Application Server 不提供用于对密码进行解码的实用程序。编码不足以完全保护密码。本机安全性是用于保护在 WebSphere Application Server 配置和属性文件中使用的密码的主机制。

关于此任务

WebSphere Application Server 将若干个未进行加密的、经过编码的密码包含在文件中。WebSphere Application Server 提供了 PropFilePasswordEncoder 实用程序,可以使用它对这些密码进行编码。密码编码的目的是阻止偶然查看服务器配置和属性文件中的密码。PropFilePasswordEncoder 实用程序不对 XML 或 XMI 文件中包含的密码进行编码。
要点: PropFilePasswordEncoder 仅更新现有属性和 XML 文件。如果添加了后续文件(例如,可能在安装新应用程序后发生),那么应对这些新文件重新运行此过程。
表 1. 包含经过编码的密码的 XML 和 XMI 文件. 相反地,WebSphere Application Server 会自动对这些文件中的密码进行编码。包含经过编码的密码的 XML 和 XMI 文件包括:
文件名 附加信息 导航
[AIX Solaris HP-UX Linux Windows][z/OS]
profile_root/config/cells/cell_name/security.xml
[AIX Solaris HP-UX Linux Windows][z/OS]
以下字段包含经过编码的密码:
  • LTPA 密码
  • JAAS 认证数据
  • 用户注册表服务器密码
  • LDAP 用户注册表 bind 密码
  • 密钥库密码
  • 信任库密码
  • [AIX Solaris HP-UX Linux Windows]密码令牌设备密码
[AIX Solaris HP-UX Linux Windows][z/OS]安全性 > 全局安全性 > 应用
[IBM i]
profile_root/config/cells/cell_name
/security.xml
[IBM i]
以下字段包含经过编码的密码:
  • LTPA 密码
  • JAAS 认证数据
  • 用户注册表服务器密码
  • LDAP 用户注册表 bind 密码
  • 密钥库密码
  • 信任库密码
  • 密码令牌设备密码
[IBM i]安全性 > 全局安全性 > 应用
war/WEB-INF/ibm_web_bnd.xml
为所有描述符(Java™ 密码体系结构中的描述符除外)中的 resource-ref 绑定指定用于缺省基本认证的密码  
ejb jar/META-INF/ibm_ejbjar_bnd.xml
为所有描述符(Java 密码体系结构中的描述符除外)中的 resource-ref 绑定指定用于缺省基本认证的密码  
client jar/META-INF/ibm-appclient_bnd.xml
为所有描述符(Java 密码体系结构中的描述符除外)中的 resource-ref 绑定指定用于缺省基本认证的密码  
ear/META-INF/ibm_application_bnd.xml
为所有描述符中的 run as 绑定指定用于缺省基本认证的密码  
[AIX Solaris HP-UX Linux Windows][z/OS]
profile_root/config/cells/cell_name
/nodes/node_name/servers/
server_name/security.xml
[AIX Solaris HP-UX Linux Windows][z/OS]
以下字段包含经过编码的密码:
  • 密钥库密码
  • 信任库密码
  • [AIX Solaris HP-UX Linux Windows]密码令牌设备密码
  • 会话持久性密码
  • DRS 客户机数据复制密码
[AIX Solaris HP-UX Linux Windows][z/OS] 
[IBM i]
profile_root/config/cells/cell_name
/nodes/node_name/servers/security.xml
[IBM i]
以下字段包含经过编码的密码:
  • 密钥库密码
  • 信任库密码
  • 密码令牌设备密码
  • 会话持久性密码
  • DRS 客户机数据复制密码
[IBM i] 
[AIX Solaris HP-UX Linux Windows][z/OS]
profile_root/config/cells/cell_name
/nodes/node_name/servers/
server_name/resources.xml
[AIX Solaris HP-UX Linux Windows][z/OS]
以下字段包含经过编码的密码:
  • WAS40Datasource 密码
  • mailTransport 密码
  • mailStore 密码
  • MQQueue 队列 mgr 密码
[AIX Solaris HP-UX Linux Windows][z/OS] 
[IBM i]
profile_root/config/cells/cell_name
/nodes/node_name/servers/server1/resources.xml 
[IBM i]
以下字段包含经过编码的密码:
  • WAS40Datasource 密码
  • mailTransport 密码
  • mailStore 密码
  • MQQueue 队列 mgr 密码
[IBM i] 
[AIX Solaris HP-UX Linux Windows]
profile_root/config/cells/cell_name/ws-security.xml
[AIX Solaris HP-UX Linux Windows]  [AIX Solaris HP-UX Linux Windows]服务器”>“服务器名称”>“Websphere 应用程序服务器”> serverName >“JAX-WS 和 JAX-RPC 安全性运行时”>“应用”。
[IBM i]
profile_root/config/cells/cell_name
/ws-security.xml 
[IBM i]  [IBM i]服务器”>“服务器名称”>“Websphere 应用程序服务器”> serverName >“JAX-WS 和 JAX-RPC 安全性运行时”>“应用”。
ibm-webservices-bnd.xmi
这是 JAX-RPC 提供者应用程序中包含的部署描述符。以下字段包含经过编码的密码:
  • 密钥库密码
  • 密钥密码
应用程序 > 企业应用程序 > application name > 管理模块 > module name > Web Service:服务器安全性绑定(在“Web Service 安全性属性”下面)> 编辑定制
ibm-webservicesclient-bnd.xmi
这是 JAX-RPC 客户机应用程序中包含的部署描述符。以下字段包含经过编码的密码:
  • 密钥库密码
  • 密钥密码
  • 用户名令牌密码
应用程序 > 企业应用程序 > application name > 管理模块 > module name > Web Service:客户机安全性绑定(在“Web Service 安全性属性”下面)> 编辑定制
profile_root/config/cells/cell_name/PolicyTyper/WSSecurity/bindings.xml
以下字段包含经过编码的密码:
  • 密钥库密码
  • 密钥密码
  • 用户名令牌密码
服务 > 策略集 > 缺省策略集绑定 > V6.1 缺省策略集绑定 > WS-Security > 定制属性 > 应用
profile_root/config/cells/cell_name/nodes/node_name/servers/server_name/server.xml
以下字段包含经过编码的密码:
  • 数据库管理员密码
服务器 > 服务器类型 > WebSphere Application Server > serverName > 会话管理 > 分布式环境 > 数据库 > 确定
注: 如果未在使用数据库,那么选择“无”。
profile_root/config/cells/cell_name/applications/(appName/.../WSSecurity/bindings.xml

JAX-WS WS-Security 策略绑定文件中的 WSSecurity/bindings.xml。当此文件位于 cell_name/applications 路径中时,它属于特定于应用程序的绑定。

以下字段包含经过编码的密码:
  • 密钥库密码
  • 密钥密码
  • 用户名令牌密码
服务 > service providers 或 > service clients > resourceName > bindingName > WS-Security > 定制属性 > 应用
profile_root/config/cells/cell_name/
  • ./Client sample/PolicyTypes/WSSecurity/bindings.xml
  • ./Client sample V2/PolicyTypes/WSSecurity/bindings.xml
  • ./Provider sample/PolicyTypes/WSSecurity/bindings.xml
  • ./Provider sample V2/PolicyTypes/WSSecurity/bindings.xml
  • ./Saml Bearer Client sample/PolicyTypes/WSSecurity/bindings.xml
  • ./Saml Bearer Provider sample/PolicyTypes/WSSecurity/bindings.xml
  • ./Saml HoK Symmetric Client sample/PolicyTypes/WSSecurity/bindings.xml
  • ./Saml HoK Symmetric Provider sample /PolicyTypes/WSSecurity/bindings.xml
以下字段包含经过编码的密码:
  • 密钥库密码
  • 密钥密码
  • 用户名令牌密码
服务 > 策略集 > 常规提供程序策略集绑定 > bindingName > WS-Security > 定制属性 > 应用
profile_root/config/cells/cell_name/sts
  • ./policy/TrustServiceSecurityDefault/PolicyTypes/WSSecurity/bindings.xml
  • ./policy/TrustServiceSymmetricDefault/PolicyTypes/WSSecurity/bindings.xml
以下字段包含经过编码的密码:
  • 密钥库密码
  • 密钥密码
  • 用户名令牌密码
服务 > 信任服务 >信任服务附件 > bindingName > WS-Security > 定制属性 > 应用.
表 2. PropFilePasswordEncoder 实用程序 - 部分文件列表. 使用 PropFilePasswordEncoder 实用程序对属性文件中的密码进行编码。这些文件包括:
文件名 附加信息
[AIX Solaris HP-UX Linux Windows][z/OS]
profile_root
/properties/sas.client.props
[AIX Solaris HP-UX Linux Windows][z/OS]
指定以下文件的密码:
  • com.ibm.ssl.keyStorePassword
  • com.ibm.ssl.trustStorePassword
  • com.ibm.CORBA.loginPassword
[IBM i]
profile_root/properties/sas.client.props
[IBM i]
指定以下文件的密码:
  • com.ibm.ssl.keyStorePassword
  • com.ibm.ssl.trustStorePassword
  • com.ibm.CORBA.loginPassword
[AIX Solaris HP-UX Linux Windows][z/OS]
profile_root
/properties/sas.tools.properties
[AIX Solaris HP-UX Linux Windows][z/OS]
为以下各项指定密码:
  • com.ibm.ssl.keyStorePassword
  • com.ibm.ssl.trustStorePassword
  • com.ibm.CORBA.loginPassword
[IBM i]
profile_root/properties/sas.tools.properties 
[IBM i]
为以下各项指定密码:
  • com.ibm.ssl.keyStorePassword
  • com.ibm.ssl.trustStorePassword
  • com.ibm.CORBA.loginPassword
[AIX Solaris HP-UX Linux Windows][z/OS]
profile_root
/properties/sas.stdclient.properties
[AIX Solaris HP-UX Linux Windows][z/OS]
为以下各项指定密码:
  • com.ibm.ssl.keyStorePassword
  • com.ibm.ssl.trustStorePassword
  • com.ibm.CORBA.loginPassword
[IBM i]
profile_root/properties/sas.stdclient.properties
[IBM i]
为以下各项指定密码:
  • com.ibm.ssl.keyStorePassword
  • com.ibm.ssl.trustStorePassword
  • com.ibm.CORBA.loginPassword
[AIX Solaris HP-UX Linux Windows][z/OS]
profile_root
/properties/wsserver.key
[AIX Solaris HP-UX Linux Windows][z/OS] 
[IBM i]
profile_root/properties/wsserver.key
[IBM i] 
profile_root/profiles/AppSrvXX/properties/sib.client.ssl.properties
为以下各项指定密码:
  • com.ibm.ssl.keyStorePassword
  • com.ibm.ssl.trustStorePassword
profile_root/UDDIReg/scripts/UDDIUtilityTools.properties
为以下各项指定密码:
  • trustStore.password
profile_root/config/cells/cell_name/sts/SAMLIssuerConfig.properties
以下字段包含经过编码的密码:
  • 信任库密码
  • 密钥密码
  • TrustStorePassword
要再次编码上述文件之一中的密码,请完成以下步骤:

过程

  1. 使用文本编辑器访问文件并键入经过编码的密码。 显示新密码,它不再是经过编码的,必须对其进行重新编码。
  2. [AIX Solaris HP-UX Linux Windows][z/OS]使用 profile_root/bin 目录中的 PropFilePasswordEncoder.batPropFilePasswordEncode.sh 文件,对密码进行重新编码。

    [AIX Solaris HP-UX Linux Windows]如果要编码的文件不是 SAS 属性文件,请输入 PropFilePasswordEncoder "file_name" password_properties_list

    [z/OS]如果要编码的文件不是 z/SAS 属性文件,请输入 PropFilePasswordEncoder "file_name" password_properties_list

    要点: 当您使用 PropFilePasswordEncoder 实用程序时,会出现提示,询问您是否需要原始文件的备份版本。如果需要备份版本,那么会使用明文密码来创建备份文件 (.bak)。请检查结果,然后删除此备份文件。它包含未加密的密码。如果不想看到此提示,请编辑 PropFilePasswordEncoder 实用程序,将以下 Java 系统属性添加为参数:-Dcom.ibm.websphere.security.util.createBackup=true-Dcom.ibm.websphere.security.util.createBackup=false

    如果 Java 系统属性值为 true,那么会创建备份文件;如果该值为 false,那么会禁用备份文件。

    其中:

    "file_name" 是 z/SAS 属性文件的名称,而 password_properties_list 是文件中要编码的属性的名称。
    注: 仅应该使用 PropFilePasswordEncoder 工具对此文件中的密码进行编码。

    仅使用 PropFilePasswordEncoder 实用程序对 WebSphere Application Server 密码文件进行编码。此实用程序无法编码 XML 文件或其他包含开始和结束标记的文件中所包含的密码。要在这些文件中更改密码,请使用管理控制台或组装工具,例如, Rational® Application Developer。

  3. [IBM i]使用 profile_root/bin/ 目录中的 PropFilePasswordEncode 脚本对密码进行重新编码。

    如果要编码的文件不是 SAS 属性文件,请输入 PropFilePasswordEncoder "file_name" password_properties_list

    "file_name" 是 SAS 属性文件的名称,而 password_properties_list 是文件中要编码的属性的名称。
    注: 仅应该使用 PropFilePasswordEncoder 工具对此文件中的密码进行编码。

    仅使用 PropFilePasswordEncoder 工具对 WebSphere Application Server 密码文件进行编码。此实用程序无法编码 XML 文件或其他包含开始和结束标记的文件中所包含的密码。要在这些文件中更改密码,请使用管理控制台或组装工具,例如, Rational Application Developer。

结果

如果您重新打开受影响的文件,那么密码是经过编码的。WebSphere Application Server 不提供用于对密码进行解码的实用程序。
[z/OS]在 WebSphere Application Server for z/OS® 上,可通过利用特定于 z/OS 的功能来最大程度地削减对配置文件中密码的依赖:
  • 使用系统授权工具 (SAF) 注册表来消除对用户注册表服务器密码的需求。
  • 选择 SAF 权限和委派,因此会除去角色到用户 bind 密码。
  • 将 RACF® 密钥环用于所有 SSL 指令表,因此不再需要信任和密钥文件密码。
  • 使用本机连接器,并配置“与线程同步”,有可能不再需要 Java 认证和授权服务 (JAAS) 认证数据。

示例

以下示例说明如何使用 PropFilePasswordEncoder 工具:
PropFilePasswordEncoder C:\WASV8\WebSphere\AppServer\profiles\AppSrv\properties
\sas.client.props com.ibm.ssl.keyStorePassword,com.ibm.ssl.trustStorePassword

其中:

PropFilePasswordEncoder 是您从 profile_root/profiles/profile_name/bin 目录运行的实用程序的名称。

C:\WASV6\WebSphere\AppServer\profiles\AppSrv\properties\sas.client.props 是包含要进行编码的密码的文件名。

com.ibm.ssl.keyStorePassword 是文件中编码的密码。

com.ibm.ssl.trustStorePassword 是要在此文件中进行编码的第二个密码。


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



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