IBM MQ:建立 SSL 连接

IBM MQ: Establishing an SSL connection

我们正在努力让 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 说法中的 "Friendly name"。

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

我们正在使用 8.0.0.7 客户端。

这些是我们遇到的问题:

一般问题:

问题是以下行:

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

结果是:

  1. 它需要规范格式,所以 DN=,等等
  2. 你甚至不需要那条线

虽然我们一路上确实学到了一些东西:

  • 行:

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

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

  • 您的 Windows 证书存储中的各种文件夹很重要。应正确提交中间 CA。