在 Liberty 中启用 SSL 通信

要在 Liberty 中启用 SSL 通信,必须满足一个最小的 SSL 配置选项集。它采用大部分 SSL 选项,而且需要一些密钥库配置信息。

关于此任务

通过使用 SSL 证书进行连接握手期间,会进行 SSL 客户机认证。SSL 握手是通过 SSL 协议交换的一系列消息,以针对特定于连接的保护进行协商。在握手期间,安全服务器会请求客户机发送回用于认证的证书或证书链。要在 Liberty 中启用 SSL,请将 ssl-1.0 Liberty 功能部件以及用于认证的密钥库信息的代码添加到配置根文档文件 server.xml

缺省情况下,配置根文档文件的路径和文件名是 path_to_liberty/wlp/usr/servers/server_name/server.xml path_to_liberty 是您将 Liberty 安装在操作系统上的位置,server_name 是服务器的名称。但是,您可以更改路径。请参阅 定制 Liberty 环境

过程

  1. server.xml 文件中启用 ssl-1.0 Liberty 功能部件。
    <featureManager>
        <feature>ssl-1.0</feature>
    </featureManager>
    注: 如果应用程序安全性是必需的,而且安全性信息会重定向到安全端口,那么您必须将 appSecurity-2.0 Liberty 功能部件添加到 server.xml 文件。
  2. 将密钥库服务对象条目添加到 server.xml 文件。keyStore 元素称为 defaultKeyStore,并且包含密钥库密码。可以采用明文或编码格式输入该密码。securityUtility encode 选项可用于对密码进行编码。
    <keyStore id="defaultKeyStore" password="yourPassword" />
    示例为最低配置中的 SAF 密钥环:
    <keyStore id="defaultKeyStore" location="safkeyring:///WASKeyring"
              type="JCERACFKS" password="password" fileBased="false" 
              readOnly="true" />

    需要先设置 RACF® 密钥环,再将其配置为可供 Liberty 服务器使用。服务器将不会创建证书并将它们添加到 RACF。

    最低 SSL 配置的单个密钥库条目也可以扩展来包含位置和类型。
    <keyStore id="defaultKeyStore" location="myKeyStore.p12" password="yourPassword" type="PKCS12"/>

    此配置是创建 SSL 配置所需的最低配置。在此配置中,如果 SSL 初始化期间密钥库和证书不存在,那么服务器会进行创建。提供的密码长度必须至少为 6 个字符。假定该密钥库是服务器 home/resources/security 目录中名为 key.jks 的 JKS 密钥库。如果不存在此文件,那么服务器将为您创建一个。如果服务器创建密钥库文件,那么也会在其中创建证书。证书是自签名证书,有效期为 365 天,证书的 subjectDN 的 CN 值为正在运行服务器的机器的主机名,而证书的签名算法为 SHA256withRSA。

    注: 由 Liberty 服务器创建的证书不用于生产。创建这些证书是为了方便开发者。生产中使用的证书必须为可信认证中心颁发或签名的正确链式证书。如果您想要使用具有更长持续时间或定制的 subjectDN 的自签名证书,那么可以使用 securityUtility createSSLCertificate 任务来创建这类证书。

    location 参数可以是密钥库文件的绝对路径。如果是绝对路径,那么会假定已创建密钥库文件。如果已创建密钥库文件,那么也可以在最低 SSL 配置中指定其他类型的密钥库。如果使用最低 SSL 配置,那么会使用 SSL 配置缺省值来创建 SSL 握手的 SSL 上下文。缺省情况下,配置协议是 SSL_TLS。可以使用 HIGH 密码 128 位及更高位数的密码套件。


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



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