可以将签署者证书添加到服务器的 trust.p12 文件中,从而允许该服务器与另一服务器进行安全通信。在对 ssl.client.props 文件进行更改后,使用 retrieveSigners 命令将签署者添加到服务器的 trust.p12 文件中,这样就可以实现安全通信。
开始之前
如果服务器要作为客户机进行通信,那么必须识别该服务器,然后才能建立服务器到服务器信任。应该对
ssl.client.props 文件进行更改,然后在作为客户机来通信的服务器上运行
retrieveSigners 命令。如果两个服务器都将充当客户机,那么应该对这两个服务器都执行这些步骤。
关于此任务
ssl.client.props 文件在缺省情况下设为对客户机进行安全套接字层 (SSL) 通信配置。这使得
retrieveSigners 命令的缺省行为能够对客户机在
profile_root/etc 目录中的
trust.p12 文件和
key.p12 文件进行处理。可以将签署者证书添加到服务器的
trust.p12 文件中,从而允许该服务器充当客户机以与另一服务器进行通信。使用
retrieveSigners 命令将签署者添加到服务器的
trust.p12 文件时,需要对
ssl.client.props 文件进行更改。
过程
- 打开 ssl.client.props 文件。 ssl.client.props 文件位于 profile_root/properties 目录中。
- 取消对以 com.ibm.ssl.alias=AnotherSSLSettings 属性开始的 ssl.client.props 部分的注释。
- 取消对以 com.ibm.ssl.trustStoreName=AnotherTrustStore 属性开始的 ssl.client.props 部分的注释。
- 输入应该添加签署者的信任库的位置。 如果对 Deployment Manager 使用服务器信任库,那么该信任库应位于 profile_root/config/cells/cell name/trust.p12 中。如果对应用程序服务器使用信任库,那么该信任库位于 profile_root/config/cells/cell name/nodes/node name/trust.p12 中。
- 在此部分中用与被使用信任库相关联的值来更新余下的属性。 可以在 ssl.client.props 客户机配置文件中找到属性的描述。
- 可选: 取消对以 com.ibm.ssl.trustStoreName=AnotherKeyStore 属性开始的部分的注释,并对该部分进行更新。 大多数情况下,只需对信任库添加一个签署者。本示例只对信任库添加一个签署者,但您还可以按步骤 3 至步骤 5 中对信任库所执行的操作那样,通过更新属性将签署者添加到密钥库中。
- 将所作的更改保存到 ssl.client.props。
- 运行 retrieveSigners 命令。 有关更多信息,请参阅有关 retrieveSigners 命令的页面。
retrieveSigners NodeDefaultTrustStore AnotherTrustStore -host ademyers.austin.ibm.com -port 8879
示例输出:CWPKI0308I: Adding signer alias "default_1" to local keystore
"AnotherTrustStore" with the following SHA digest:
F4:71:97:79:3E:C1:DC:E7:9F:8F:3D:F0:A0:15:1E:D1:44:73:2C:06
结果
在成功完成上述步骤后,充当客户机的服务器将具有其他服务器的签署证书。这将允许该服务器建立与其他服务器的 SSL 连接。
示例
本示例显示了
ssl.client.props 文件的已修改部分,假设使用的是服务器的
trust.p12 文件。只要为现有信任库提供了这些属性,那么可以使用该信任库。
#-------------------------------------------------------------------------
com.ibm.ssl.alias=AnotherSSLSettings
com.ibm.ssl.protocol=SSL_TLS
com.ibm.ssl.securityLevel=HIGH
com.ibm.ssl.trustManager=IbmX509
com.ibm.ssl.keyManager=IbmX509
com.ibm.ssl.contextProvider=IBMJSSE2
com.ibm.ssl.enableSignerExchangePrompt=true
#com.ibm.ssl.keyStoreClientAlias=default
#com.ibm.ssl.customTrustManagers=
#com.ibm.ssl.customKeyManager=
#com.ibm.ssl.dynamicSelectionInfo=
#com.ibm.ssl.enabledCipherSuites=
# KeyStore information
#com.ibm.ssl.keyStoreName=AnotherKeyStore
#com.ibm.ssl.keyStore=${user.root}/etc/key.p12
#com.ibm.ssl.keyStorePassword={xor}CDo9Hgw=
#com.ibm.ssl.keyStoreType=PKCS12
#com.ibm.ssl.keyStoreProvider=IBMJCE
#com.ibm.ssl.keyStoreFileBased=true
# TrustStore information
com.ibm.ssl.trustStoreName=AnotherTrustStore
com.ibm.ssl.trustStore=${user.root}/config/cells/localhostCell01/trust.p12
com.ibm.ssl.trustStorePassword={xor}CDo9Hgw=
com.ibm.ssl.trustStoreType=PKCS12
com.ibm.ssl.trustStoreProvider=IBMJCE
com.ibm.ssl.trustStoreFileBased=true
下一步做什么
在添加签署者后,编辑
ssl.client.props 文件以取消对用于添加签署者证书的部分的注释。