【发布时间】:2015-01-24 08:27:17
【问题描述】:
我正在尝试使用 c#.net 应用程序连接 ssl“必需”通道。 我按照以下步骤创建和交换证书
在 IBM 密钥管理工具的帮助下,我在 websphere MQ 服务器 (192.168.10.2) 中创建了自签名证书 然后将其解压缩为 server.arm
然后为客户端做同样的事情
之后,我将 server.arm 复制到客户端计算机 (192.168.10.1) 并将 client.arm 复制到 WMQ 服务器 (192.168.10.2)
在服务器的 IBM 密钥管理工具中,我选择了签署者证书并添加了 client.arm,我将标签名称设置为 ibmwebspheremqclient 然后在客户端机器(192.168.10.1)中,我添加 server.arm 作为签名者证书并将标签设置为 ibmwebspheremqqm_sslconnect
这是我的频道配置。如果我将此设置设置为可选,那么这对我来说很好,但我必须将 SSL 选项启用为“必需”。
当我尝试连接此代码块时
using IBM.WMQ;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
public class SSLConnectionTest
{
const String connectionType = IBM.WMQ.MQC.TRANSPORT_MQSERIES_CLIENT;
const String qManager = "QM_SSLConnect";
const String hostName = "192.168.10.2";
const String channel = "ADMIN.TLS.SVRCONN";
const String port = "1480";
const String sslKeyRepository = @"C:\Program Files (x86)\IBM\WebSphere MQ\ssl\key";
const String cipherSpec = "TLS_RSA_WITH_AES_128_CBC_SHA256";
const String cipherSuite = "SSL_RSA_WITH_AES_128_CBC_SHA256";
public Hashtable init()
{
Hashtable properties = new Hashtable();
properties.Add(MQC.TRANSPORT_PROPERTY, MQC.TRANSPORT_MQSERIES_CLIENT);
properties.Add(MQC.HOST_NAME_PROPERTY, hostName);
properties.Add(MQC.PORT_PROPERTY, port);
properties.Add(MQC.CHANNEL_PROPERTY, channel);
properties.Add(MQC.SSL_CERT_STORE_PROPERTY, sslKeyRepository);
properties.Add(MQC.SSL_CIPHER_SUITE_PROPERTY, cipherSuite);
properties.Add(MQC.SSL_CIPHER_SPEC_PROPERTY, cipherSpec);
return properties;
}
public void TestSSLConnection()
{
try
{
Hashtable connectionProperties = init();
MQQueueManager qMgr = new MQQueueManager(qManager, connectionProperties);
}
catch (MQException ex)
{
Console.WriteLine("A WebSphere MQ error occurred: {0}", ex.ToString());
}
catch (System.Exception ex)
{
Console.WriteLine("A System error occurred: {0}", ex.ToString());
}
}
}
它给了我这个错误代码
我已经刷新了REFRESH SECURITY TYPE(SSL)
我在客户端 (192.168.10.1) C:\Program Files (x86)\IBM\WebSphere MQ\errors\AMQERR01.LOG 中发现以下错误 https://docs.google.com/document/d/1gc0AoxQpdLNg1pz_vkw-tapWDNclYXY5ql_aMIVBMfA/edit?usp=sharing
和我服务器的 192.168.10.2 错误日志 https://docs.google.com/document/d/1lxzo41TWauAyYKH1wcXOxj6HYlTYkSUoPjaTmsJHxYI/edit?usp=sharing
谁能帮帮我???
【问题讨论】:
-
如果有人对此感兴趣,我在这里发布了我是如何实现这一目标的2freeclear.wordpress.com/2014/11/29/…
标签: c# ssl ssl-certificate ibm-mq