【发布时间】:2017-02-13 14:13:09
【问题描述】:
各位,我正在尝试从 WAS Liberty 应用程序连接到 MQ Hub。我们的 MQ Hub 仅支持 SSL 证书身份验证。我用 JKS 文件和里面的证书创建了 QCF、Keystore。然后我创建了 defaultSSLConfig 并指向了那个密钥库。
但是我无论如何都找不到在 QCF 中指定 SSLConfig 并在某些页面上阅读它是不可能的。唯一的方法是使用 defaultSSLConfig 并从那里指定我所做的密钥库。所以现在我在这里,MQ 连接不起作用。在 MQ Hub 日志中,我看到错误提示“通道缺少用于 SSL 握手的证书。”
这就是我的 QCF 的样子,没有指定 SSL 配置的参数
<jmsConnectionFactory connectionManagerRef="ConMgr" jndiName="jms/wmqCF">
<properties.wmqJms channel="TEST_CHANNEL" hostName="REMOVED" port="1415" queueManager="ALQ.TEST" transportType="CLIENT" sslCipherSuite="SSL_RSA_WITH_AES_128_CBC_SHA"/>
</jmsConnectionFactory>
MQ 端完全错误
解释:
该通道缺少用于 SSL 握手的证书。
频道
名称是 'XXX.ADM.SVRCONN'(如果是 '????' 它在这个阶段是未知的 SSL
加工)。远程主机是“XXX (10.xx.xx.x)”。
频道未启动。
行动:
确保在
中正确配置了相应的证书 钥匙
通道两端的存储库。----- amqccisa.c : 7355
17 年 2 月 14 日 15:07:44 - 进程 (7510.304808) 用户 (mqm) 程序 (amqrmppa)
主机(xxx) 安装(Installation1)
VRMF(7.5.0.6) QMgr(XXXXX)AMQ9999:通道 'XXX.ADM.SVRCONN' 到主机 'xxx (10.xx.xx.xx)' 结束 异常。
解释:
在通道 'XX.ADM 的进程 ID 7510 下运行的通道程序。 SVRCONN'
异常结束。主机名是'xx(10.xx.xx.xx)';在一些
案例
无法确定主机名,因此显示为“??????”。动作:
查看错误中通道程序的先前错误消息
登录到
确定失败的原因。请注意,此消息可以是
排除
通过调整“ExcludeMessage”或
完全或抑制 “抑制消息”
qm.ini 中“QMErrorLog”节下的属性。更多的信息 可以
在系统管理指南中找到。
【问题讨论】:
-
我已按照您的建议标记了该问题。我在 MQ HUB 方面遇到的错误是我在问题中提到的错误。我不认为这是一个 MQ Hub 问题,而是 QCF 在 Liberty 中的实现。具有传统的 WAS ND 安装,可与使用 SSL 证书身份验证的相同 MQ HUB 一起正常工作。是 WAS Liberty 不起作用。
-
这是 IO 在 MQ 端看到的内容。看原帖,我更新了。
-
当您说 MQ Hub 时,您是指 Message Hub 吗?
-
是的,它即将推出。试图把它放在一起。 :)