【发布时间】:2021-07-08 00:56:47
【问题描述】:
我们正在运行 Websphere MQ 9.1,并且我们的遥测 (MQTT) 通道配置为需要 SSL 身份验证。
我们的证书只有几个月的有效期,我们希望自动化替换这些证书的过程。我可以轻松地创建一个新的 .kdb 文件并将其放置在 SSLKEYR 位置,但这不会自动使通道使用新证书。
我已经尝试了REFRESH SECURITY TYPE(SSL) 命令并且该命令成功(输出:AMQ8560I: IBM MQ security cache refreshed.)我认为这应该工作,请参阅:https://www.ibm.com/docs/en/ibm-mq/9.1?topic=authorities-refreshing-tls-security
刷新 TLS 安全性
如果您对密钥存储库进行了更改,您可以在通道运行时刷新保存在内存中的密钥存储库副本,而无需重新启动通道。当您刷新密钥存储库的缓存副本时,队列管理器上当前运行的 TLS 通道将使用新信息进行更新。
关于这个任务
当使用 TLS 保护通道时,数字证书及其关联的私钥存储在密钥存储库中。通道运行时,密钥存储库的副本保存在内存中。如果您对密钥存储库进行了更改,您可以刷新保存在内存中的密钥存储库副本,而无需重新启动通道。
当您刷新密钥存储库的缓存副本时,当前运行的所有 TLS 通道都会更新:
允许使用 TLS 的发送方、服务器和集群发送方通道完成当前批次的消息。然后通道再次运行 SSL 握手并刷新密钥存储库视图。
所有其他使用 TLS 的通道类型都已停止。如果已停止通道的伙伴端定义了重试值,则通道将重试并再次运行 SSL 握手。新的 SSL 握手使用密钥存储库内容的刷新视图、用于证书撤销列表的 LDAP 服务器的位置以及密钥存储库的位置。在服务器连接通道的情况下,客户端应用程序失去与队列管理器的连接,必须重新连接才能继续。
但是 - 当我用具有不同证书的密钥存储库替换 KDB 并刷新安全性时,我的客户端在我从通道中清除它们后仍会重新连接。当我重新启动频道时,客户端按预期保持离线状态。
为什么在这种情况下刷新安全性不起作用(因为它是遥测通道?),有没有办法在不停止和启动通道的情况下解决这个难题?
【问题讨论】:
-
您使用的是哪个特定的 MQ 版本?
-
09010006,如果我没看错的话——我们有单独的 MQ 操作,我什至无法查看日志文件:-(