对定制密码加密启用插接点

由两个属性控制密码保护。通过配置这两个属性,可以对定制密码加密启用插接点。

开始之前

要查看举例说明 com.ibm.wsspi.security.crypto.CustomPasswordEncryption 接口的示例代码样本,请参阅定制密码加密的插接点

关于此任务

每当配置了定制类并且启用了定制加密,就会调用加密方法来处理密码。每当配置了定制类并且密码中包含 {custom:alias} 标记,就会调用解密方法。在解密之前,会先去掉 custom:alias 标记。

过程

  1. 要启用定制密码加密,您必须配置两个属性:
    • com.ibm.wsspi.security.crypto.customPasswordEncryptionClass - 定义实现 com.ibm.wsspi.security.crypto.CustomPasswordEncryption 密码加密接口的定制类。
    • com.ibm.wsspi.security.crypto.customPasswordEncryptionEnabled - 定义何时将定制类用于缺省密码处理。当未指定 passwordEncryptionEnabled 选项或将它设为 false,并且指定了 passwordEncryptionClass 类时,只要 {custom:alias} 标记在配置库中仍然存在,就会调用解密方法。
  2. [AIX Solaris HP-UX Linux Windows][z/OS]要配置定制密码加密,请在 server.xml 文件中配置这两个属性。 如何执行此配置取决于您现有的目录结构。选择下列其中一种方式来执行此配置:
    • 将定制加密类 (com.acme.myPasswordEncryptionClass) 放在 ${WAS_INSTALL_ROOT}/classes 目录下的 Java 归档 (JAR) 文件中。在这种情况下,您已经为实现此目的而创建了 ${WAS_INSTALL_ROOT}/classes 目录。
      注: WebSphere Application Server 不会创建 ${WAS_INSTALL_ROOT}/classes 目录。
    • 将定制加密类 (com.acme.myPasswordEncryptionClass) 放在 ${WAS_HOME}/lib/ext 目录或者现有的另一个有效目录下的 Java 归档 (JAR) 文件中。
    在使用定制加密类加密所有密码前,必须保存每个包含密码的配置文档(security.xml 和任何包含 RunAs 密码的应用程序绑定)。
  3. [IBM i]要配置定制密码加密,请在 security.xml 文件中配置这两个属性。在所有 WebSphere Application Server 进程中,必须将定制加密类 (com.acme.myPasswordEncryptionClass) 放置在 ${APP_SERVER_ROOT}/classes 目录中的 Java™ 归档 (JAR) 文件中。在使用定制加密类加密所有密码前,必须保存每个包含密码的配置文档(security.xml 和任何包含 RunAs 密码的应用程序绑定)。对于诸如 sas.client.propssoap.client.props 之类的客户端属性文件,请使用 PropFilePasswordEncoder.batPropFilePasswordEncode.sh 脚本来启用定制处理。此脚本必须在脚本的 Java 命令行上将这两个属性配置成系统属性。当启用了定制密码加密时,用于编码和解码的工具可以用于加密和解密。
  4. 如果定制实现类缺省为 com.ibm.wsspi.security.crypto.CustomPasswordEncryptionImpl 接口,并且此类在类路径中存在,那么缺省情况下启用加密。这简化了所有节点的启用过程。除了定制实现所需要的以外,不需要定义任何其他属性。要禁用加密,但仍将此类用于解密,请指定下面这个类。
    • com.ibm.wsspi.security.crypto.customPasswordEncryptionEnabled=false

下一步做什么

当调用定制加密类加密操作发生运行时异常或定义的 PasswordEncryptException 异常时,WebSphere Application Server 运行时使用 {xor} 算法对密码进行编码。此编码防止以纯文本格式存储密码。在解决了定制类的这个问题后,下次保存配置文档时就会自动对密码进行加密。

当对 RunAs 角色指定用户标识和密码时,当前使用 WebSphere Application Server 编码功能对它进行编码。因此,在配置定制插入点以对密码进行加密后,该插入点也会加密 RunAs 绑定的密码。如果已部署的应用程序被移至不具有相同加密密钥的单元,或尚未启用定制加密,那么登录会因为密码不可读而失败。

定制密码加密实现的一个职责是管理加密密钥。此类必须解密它所加密的任何密码。对密码进行解密时发生任何故障都会导致该密码不可用,必须在配置中更改该密码。所有加密密钥必须可用于解密,而且使用这些密钥进行解密后不会留下任何密码。主密钥必须由定制密码加密类维护,以保护加密密钥。

可通过使用密钥库的存储文件来管理主密钥,也可通过使用密码定位器(它使定制加密类能够找到密码,以便可以锁定它)来管理主密钥。


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



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