我有一个 .net mq 客户端试图连接到启用了 ssl 的 mq 服务器。我在客户端机器上安装了证书。下面是我用来连接到 MQ 服务器的代码。我使用 ikeyman 创建了一个 key 数据库文件,并将私钥和根证书以及中间证书添加到 .kdb 文件中
prop.Add(MQC.HOST_NAME_PROPERTY, "xx.xx.xx.xxx");
prop.Add(MQC.CHANNEL_PROPERTY, "xxx");
prop.Add(MQC.PORT_PROPERTY, "xxx"));
prop.Add(MQC.TRANSPORT_PROPERTY, MQC.TRANSPORT_MQSERIES_MANAGED);
prop.Add(MQC.CONNECT_OPTIONS_PROPERTY, MQC.MQCNO_RECONNECT_Q_MGR);
prop.Add(MQC.SSL_CIPHER_SUITE_PROPERTY, "SSL_RSA_WITH_3DES_EDE_CBC_SHA");
prop.Add(MQC.SSL_CERT_STORE_PROPERTY, "xxx\\xxx\\");
prop.Add(MQC.SSL_CIPHER_SPEC_PROPERTY, "TRIPLE_DES_SHA_US");
qmanager = new MQQueueManager("xxx", props);
queue = qmanager.AccessQueue("xxx",
MQC.MQOO_INPUT_AS_Q_DEF + MQC.MQOO_FAIL_IF_QUIESCING);
当它尝试连接到队列管理器客户端时抛出异常 AMQ9665: SSL 连接被 channel 的远程端关闭。 .请帮忙
最佳答案
是的。您可能需要:
prop.Add(MQC.SSL_CERT_STORE_PROPERTY, sslKeyRepository);;
prop.Add(MQC.SSL_CIPHER_SPEC_PROPERTY, "TLS_RSA_WITH_AES_128_CBC_SHA256");
请阅读MQ知识中心here获取更多信息。
关于.net - 启用 SSL 的 MQ 客户端连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34637654/