配置 HTTPInput 和 HTTPReply 节点以使用 SSL(HTTPS)

本任务主题解释了如何配置 HTTPInput 和 HTTPReply 节点,以便使用基于 SSL 的 HTTP 来与其他应用程序通信。其中包含 Windows 系统所需的步骤,但其他任何平台所需的任务也基本相同。

创建密钥库文件以存储代理证书

WebSphere Message Broker 包括 Java 运行时环境(JRE),它可以提供称为密钥工具的密钥库操作程序。要调用该命令,请完成以下步骤:

  1. 选择开始 > IBM WebSphere Message Brokers 6.0 > 命令控制台以打开代理命令控制台。
  2. 在命令控制台中,输入下列命令:
    "%MQSI_FILEPATH%\jre\bin\keytool"
    这将显示帮助选项,因而可以验证命令是否有效。
  3. 使用密钥工具命令创建密钥库: 在命令控制台中,输入下列命令:
    "%MQSI_FILEPATH%\jre\bin\keytool" -genkey -keypass password
    -keystore keystore file -alias tomcat
    密码
    密钥库的密码
    密钥库文件
    密钥库文件的标准名称。此文件通常命名为 .keystore,并且位于消息代理用户主目录。
    然后,命令将提示用户输入一些用于生成证书的个人详细信息。填写完所有值后,将生成密钥库或将密钥库添加到已有密钥库。

    可将这些值设置为任何必需值,但代理的属性必须更改为反映这些值。-genkey 生成使 HTTPS 生效所需的所有证书文件,但这些证书文件并非官方证书,因此不建议用于生产系统。您必须从证书组织购买实际证书。 向系统管理员咨询,找出您公司用于创建证书的策略。要导入由证书中心生成的证书,使用 -import 选项,而非 -genkey 选项。

现在密钥库已创建,并可由代理使用。

在特定的端口配置代理以使用 SSL

需要设置代理的若干属性以便使用基于 SSL 的 HTTP。所有这些属性都可以使用 mqsichangeproperties 命令进行更改。按照以下步骤更改属性:

确保所有这些属性的设置符合您的系统。只需要设置 enableSSLConnector 属性。其他三个属性具有缺省值。但是,建议更改这些缺省值。mqsichangeproperties 命令可列出所有属性的缺省值。

创建消息流以处理 HTTPS 请求

显示 HTTPS 功能有效的最简单的消息流是包含 HTTPInput 节点的消息流,该节点直接与 HTTPReply 节点连接:HTTPInput 节点上要设置的两个重要属性为:

  • URL 选择器。例如 /*/testHTTPS
  • 使用 HTTPS。如果要使用 HTTPS,勾选此框

/* 指 HTTPInput 节点将匹配在指定端口上向 http 侦听器发送的任何请求。这对于测试很有用,但不建议用于生产。

您现在可以将消息流部署到代理了。如果已完成所有其他步骤进行到这一步,将会在本地系统日志(Windows 中的事件日志)中显示 BIP3132 消息,表明已启动 https 侦听器。

现在您可以测试系统了。

测试示例

为了向基于 HTTPS 的代理发出请求而测试 HTTPS 配置是否正确的最简单方法是使用 Web 浏览器。

打开 Web 浏览器并输入以下 URL:
 https://localhost:7083/testHTTPS
更改 URL 中的任何值以反映您在代理配置中进行的更改。当显示弹出窗口询问您是否接受证书时,请在所有问题下选择“是”。然后,浏览器将刷新并显示空白 html 的页面结构。在 Mozilla 浏览器中,将如以下示例所示:
<html>  
  <body/>
</html>
在 Internet Explorer 中,应显示以下信息:
XML document must have a top level element. Error processing resource
'https://localhost:7083/testHTTPS'

这些响应意味着返回了空白页面,表明设置有效。要将内容添加到返回的页面,可将 compute 节点添加到消息流中。

可以使用其他 HTTPS 客户机处理 HTTPS 请求。阅读客户机文档,了解如何配置客户机才能进行基于 SSL 的客户机连接。

可以使用其他 HTTPS 客户机(如 Java 或 .net 客户机)代替 Web 浏览器。根据客户机类型,使用密钥工具创建的证书可能必须从 http 侦听器的密钥库文件导出,然后导入该客户机的密钥库。参考客户机文档,了解如何配置客户机才能进行基于 SSL 的客户机连接。

声明 | 商标 | 下载 | 书库 | 支持 | 反馈
Copyright IBM Corporation 1999, 2006 最后一次更新时间:2006/08/14
ap12234_