您好我想连接webpshere mq .net客户端。我不想使用任何environmet变量设置到服务器或我的客户端PC。
我检查但是我不能,我也在连接属性中设置路径和削片机但是我失败了。可以使用ssl连接分享一些.net代码示例
connectionProperties.Add(MQC.SSL_CERT_STORE_PROPERTY, SSLPath);
connectionProperties.Add(MQC.SSL_CIPHER_SPEC_PROPERTY, SSLChipper);
MQEnvironment.SSLCipherSpec = "ECDHE_RSA_AES_256_GCM_SHA384";
MQEnvironment.SSLKeyRepository = SSLPath;// path is my cer and tab files folder
MQEnvironment.properties.Add(MQC.TRANSPORT_PROPERTY, ConnectionType);
MQEnvironment.ConnectionName = HostName;
MQEnvironment.Channel = channelName;
qMgr = new MQQueueManager(QueueManagerName, connectionProperties);
我找到了这个主题,但他们建议直接设置环境变量 .NET client connecting to IBM MQ over SSL
@Update只想使用amqdmdnet(8.0.0.7)我的最终代码,我不想设置环境变量。
string ConnectionName = string.Format(" {0}({1})",HostName,Port);
Hashtable connectionProperties = new Hashtable();
connectionProperties.Add(MQC.CHANNEL_PROPERTY, channelName);
connectionProperties.Add(MQC.PORT_PROPERTY, Port);
connectionProperties.Add(MQC.CONNECTION_NAME_PROPERTY, ConnectionName);
connectionProperties.Add(MQC.TRANSPORT_PROPERTY, MQC.TRANSPORT_MQSERIES_MANAGED);
connectionProperties.Add(MQC.SSL_CERT_STORE_PROPERTY, @"D:\D\MYcertificates\Client\client_4_certificate"); //without .kdb but folder path
connectionProperties.Add(MQC.HOST_NAME_PROPERTY, hostName);
connectionProperties.Add(MQC.SSL_CIPHER_SPEC_PROPERTY,"TLS_RSA_WITH_AES_256_GCMSHA384");
qMgr = new MQQueueManager(QueueManagerName, connectionProperties);
对于这些代码,我收到2538错误。
@ UPDATE3
我更改了我的cert_store属性并上传到证书我的windows store connectionProperties.Add(MQC.SSL_CERT_STORE_PROPERTY," * USER"); 那个时候我传递2538错误并且拿2059错误。在错误细节中我得到了这个错误我发送的chipperspec属性它没有正确发送到服务器
在我发送的代码中 connectionProperties.Add(MQC.SSL_CIPHER_SPEC_PROPERTY," TLS_RSA_WITH_AES_256_CBC_SHA");
我收到了错误 本地通道定义中需要的CipherSpec是 ' TLS_RSA_WITH_AES_256_CBC_SHA&#39 ;.在此期间协商的CipherSpec的名称 SSL握手是' TLS_RSA_WITH_AES_128_CBC_SHA'。如果是,则显示代码 无法确定协商的CipherSpec的名称。