IBM MQ:建立SSL连接

时间:2018-05-30 09:31:20

标签: ssl ibm-mq

我们正在努力让IBM MQ跨SSL工作。

我们已获得远程主机的证书链,并已安装到Windows证书存储区(本地计算机)中。这些都看起来有效。

我们使用以下连接属性:

        connectionProperties.Add(MQC.SSL_PEER_NAME_PROPERTY, "other-server.com");            
        connectionProperties.Add(MQC.SSL_CIPHER_SUITE_PROPERTY, "TLS_RSA_WITH_AES_256_CBC_SHA256");            connectionProperties.Add(MQC.SSL_CIPHER_SPEC_PROPERTY, "TLS_RSA_WITH_AES_256_CBC_SHA256"); 
        connectionProperties.Add(MQC.SSL_CERT_STORE_PROPERTY, "*SYSTEM"); 
        connectionProperties.Add("CertificateLabel", "ibmwebspheremqmywindowsusernamewithoutdomain"); 
        MQEnvironment.SSLCertRevocationCheck = true; 

我们已经确定“CertificateLabel”是Windows用语中的“友好名称”。

我们已经证明了未加密的通信和网络级配置。

我们正在使用8.0.0.7客户端。

这些是我们遇到的问题:

一般问题:

  • 我们是否正确假设我们可以在Windows证书存储区中专门安装生成的证书?
  • 2538错误是否与SSL通信有关?虽然在引用的错误文档中有最后一点,但感觉就像网络错误一样。
  • 我们是否可以在任何地方寻找更多信息丰富的错误信息?例如。与SSL信任链有关,看看是否存在问题?

1 个答案:

答案 0 :(得分:1)

问题如下:

connectionProperties.Add(MQC.SSL_PEER_NAME_PROPERTY, "otherserver.com");

原来:

  1. 它需要以规范格式,DN=等等。
  2. 你甚至不需要那条线
  3. 虽然我们在此过程中确实学到了一些东西:

    • 该行:

      connectionProperties.Add("CertificateLabel", "ibmwebspheremqmyusername");

      字符串ibmwebspheremq加上您的 Windows 用户名(没有您的域名)是否应在友好名称上设置标签>您的客户端计算机的传出证书,不包括用户名。

    • Windows证书存储区中的各种文件夹非常重要。中间CA应正确归档。