使用脚本编制来自动进行 SSL 配置
WebSphere® 需要 SSL 配置来执行与其他服务器的 SSL 连接。可以通过管理控制台来完成 SSL 配置。但是,如果需要以自动方式来创建 SSL 配置,那么应该使用 AdminTask。
开始之前
关于此任务
可以交互方式和批处理方式来使用 AdminTask。要自动完成操作,应该使用批处理方式选项。可以在 JACL 或 Python 脚本中调用 AdminTask 批处理方式。交互方式将通过该任务需要的所有参数来逐步完成,它要求每个参数都标记有一个“*”。在交互方式执行该任务前,它会将任务的批处理方式语法回传至屏幕。当编写批处理方式脚本时,这可能很有帮助。
创建 SSL 配置时所需的属性:
- 密钥库
- 缺省客户机证书别名
- 缺省服务器证书别名
- 信任库
- 握手协议
- 握手期间所需的密码
- 是否支持客户机认证
过程
- 要创建 SSL 配置,可以使用 createSSLConfig AdminTask。要对 SSL 配置进行更改,请使用 modifySSLConfig AdminTask。
- 交互方式:
交互方式引导您设置完成所有属性,并且当属性具有缺省值时会告诉您该缺省值。缺省值位于提示行的“[]”中。批处理方式中使用的实际标志位于每个提示行上的“()”中。如果使用的是缺省值,那么该标志将不出现在批处理命令行上。
使用 Jacl:
$AdminTask createSSLConfig -interactive
- 使用 Jython:
AdminTask.createSSLConfig ('[interactive]')
*SSL Configuration Alias (alias): testSSLConfig Management Scope Name (scopeName): (cell):HOSTNode01Cell:(node):HOSTNode01 Client Key Alias (clientKeyAlias): clientCert Server Key Alias (serverKeyAlias): serverCert SSL Type (type): [JSSE] Client Authentication (clientAuthentication): [false] Security Level of the SSL Configuration (securityLevel): [HIGH] HIGH Enabled Ciphers SSL Configuration (enabledCiphers): JSSE Provider (jsseProvider): [IBMJSSE2] Client Authentication Support (clientAuthenticationSupported): [false] SSL Protocol (sslProtocol): [SSL_TLSv2] SSL_TLSv2 Trust Manager Object Names (trustManagerObjectNames): *Trust Store Name (trustStoreName): testTrustStore Trust Store Scope (trustStoreScopeName): (cell):HOSTNode01Cell:(node):HOSTNode01 *Key Store Name (keyStoreName): testKeyStore Key Store Scope Name (keyStoreScopeName): (cell):HOSTNode01Cell:(node):HOSTNode01 Key Manager Name (keyManagerName): IbmX509 Key Manager Scope Name (keyManagerScopeName): (cell):HOSTNode01Cell:(node):HOSTNode01 Create SSL Configuration F (Finish) C (Cancel) Select [F, C]: [F] WASX7278I: Generated command line: $AdminTask createSSLConfig {-alias testSSLConfig -scopeName (cell):HOSTNode01Cell:(node):HOSTNode01 -clientKeyAlias clientCert -serverKeyAlias serverCert -trustStoreName testTrustStore -trustStoreScopeName (cell):HOSTNode01Cell:(node):HOSTNode01 -keyStoreName testKeyStore -keyStoreScopeName (cell):HOSTNode01Cell:(node):HOSTNode01 -keyManagerName IbmX509 -keyManagerScopeName (cell):HOSTNode01Cell:(node):HOSTNode01 } (cells/HOSTNode01Cell|security.xml#SSLConfig_1137687301834)
在该输出的末尾处,提供了批处理方式参数。
- 批处理方式:
使用 Jacl:
$AdminTask createSSLConfig {-alias testSSLConfig -scopeName (cell):HOSTNode01Cell:(node):HOSTNode01 -clientKeyAlias clientCert -serverKeyAlias serverCert -trustStoreName testTrustStore -trustStoreScopeName (cell):HOSTNode01Cell:(node):HOSTNode01 -keyStoreName testKeyStore -keyStoreScopeName (cell):HOSTNode01Cell:(node):HOSTNode01 -keyManagerName IbmX509 -keyManagerScopeName (cell):HOSTNode01Cell:(node):HOSTNode01}
使用 Jython:
AdminTask.createSSLConfig ('[-alias testSSLConfig -scopeName (cell):HOSTNode01Cell:(node):HOSTNode01 -clientKeyAlias clientCert -serverKeyAlias serverCert -trustStoreName testTrustStore -trustStoreScopeName (cell):HOSTNode01Cell:(node):HOSTNode01 -keyStoreName testKeyStore -keyStoreScopeName (cell):HOSTNode01Cell:(node):HOSTNode01 -keyManagerName IbmX509 -keyManagerScopeName (cell):HOSTNode01Cell:(node):HOSTNode01]')
(cells/HOSTNode01Cell|security.xml#SSLConfig_1137687301834)
- 交互方式:
- 密钥库和信任库 密钥库和信任库可能已存在,或者可能需要以创建一个新的此类库。要创建新的密钥库或信任库,请使用
createKeyStore AdminTask。它将创建密钥库文件并将配置对象存储在系统配置中。信任库仅是一个密钥库,通常只包含签署者证书。要创建密钥库,请输入:
使用 Jacl:
$AdminTask createKeyStore {-keyStoreName testKeyStore -keyStoreType PKCS12 -keyStoreLocation $(USER_INSTALL_ROOT)\testKeyStore.p12 -keyStorePassword abcd -keyStorePasswordVerify abcd -keyStoreIsFileBased true -keyStoreReadOnly false}
使用 Jython:
AdminTask.createKeyStore ('[-keyStoreName testKeyStore -keyStoreType PKCS12 -keyStoreLocation $(USER_INSTALL_ROOT)\testKeyStore.p12 -keyStorePassword abcd -keyStorePasswordVerify abcd -keyStoreIsFileBased true -keyStoreReadOnly false]')
- 密钥管理器 密钥管理器用来确定如何选择证书。缺省情况下,IbmX509 密钥管理器在安全性配置中。如果需要另一个密钥管理器,请使用 createKeyManager AdminTask 来创建。要创建密钥管理器,请输入:
使用 Jacl:
$AdminTask createKeyManager {-name testKeyManager -scopeName (cell):HOSTNode01Cell:(node):HOSTNode01 -provider IBMJSSE2 -algorithm specialAlgorithm }
使用 Jython:
AdminTask.createKeyManager ('[-name testKeyManager -scopeName (cell):HOSTNode01Cell:(node):HOSTNode01 -provider IBMJSSE2 -algorithm specialAlgorithm]')
- 信任管理器 信任管理器用来确定在 SSL 通信期间如何建立信任。缺省情况下,IbmX509 和 IbmPKIX
信任管理器在安全性配置中。如果需要另一个信任管理器,请使用 createTrustManger AdminTask 来创建。要创建信任管理器,请输入:
使用 Jacl:
$AdminTask createTrustManager {-name testTrustManager -scopeName (cell):HOSTNode01Cell:(node):HOSTNode01 -provider IBMJSSE2 -algorithm specialAlgorithm }
使用 Jython:
AdminTask.createTrustManager ('[-name testTrustManager -scopeName (cell):HOSTNode01Cell:(node):HOSTNode01 -provider IBMJSSE2 -algorithm specialAlgorithm]')
wsadmin>$AdminTask listTrustManagers -interactive List Trust Managers List trust managers. Management Scope Name (scopeName): Display list in ObjectName Format (displayObjectName): [false] true List Trust Managers F (Finish) C (Cancel) Select [F, C]: [F] Inside generate script command WASX7278I: Generated command line: $AdminTask listTrustManagers {-displayObjectName true } IbmX509(cells/IBM-0AF8DABCF16Node01Cell|security.xml#TrustManager_IBM-0AF8DABCF16Node01_1) IbmPKIX(cells/IBM-0AF8DABCF16Node01Cell|security.xml#TrustManager_IBM-0AF8DABCF16Node01_2)


http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=txml_automatessl
文件名:txml_automatessl.html