我赢得了与MQ合作的服务。
但我希望它使用ssl通道和数据库与公钥/私钥(为此)
请你解释一下如何做到这一点。
P.S。我不是很擅长MQ
现在我使用此代码连接到MQ
MQEnvironment.Hostname = ConfigurationManager.AppSettings["HostnameIN"];
MQEnvironment.Channel = ConfigurationManager.AppSettings["ChannelIN"];
MQEnvironment.Port = int.Parse(ConfigurationManager.AppSettings["PortIN"]);
Environment.SetEnvironmentVariable("MQCCSID", ConfigurationManager.AppSettings["MQCCSID"]);
var mqQueueManagerName = ConfigurationManager.AppSettings["QueueManagerNameIN"];
var mqQueueName = ConfigurationManager.AppSettings["QueueNameIN"];
const int openOptions = MQC.MQOO_BROWSE | MQC.MQOO_INPUT_AS_Q_DEF;
var qMgr = new MQQueueManager(mqQueueManagerName);
var getOptions = new MQGetMessageOptions();
并使用此
获取所有消息using (var mqQueue = qMgr.AccessQueue(mqQueueName, openOptions))
{
try
{
//while (mqQueue.CurrentDepth>0)
while (true)
{
var message = new MQMessage();
//message.Version = 2;
getOptions.Options = MQC.MQGMO_WAIT | MQC.MQGMO_BROWSE_NEXT;
mqQueue.Get(message, getOptions);
mqMessages.Add(message);
}
}
答案 0 :(得分:3)
为了将MQ设置为在您正在使用的通道上使用SSL,您根本不需要进行任何应用程序更改 - 您只需要在队列管理器上配置要使用的通道即可SSL。客户端,JVM和队列管理器中的库将处理为您建立安全连接的过程。因此理论上,您需要做的就是更改MQSC / MQ资源管理器,这将在通道上配置SSL。
建议您阅读IBM知识中心的以下页面。它为将客户端安全地连接到队列管理器的各种方法提供了许多方案: http://www-01.ibm.com/support/knowledgecenter/SSFKSJ_8.0.0/com.ibm.mq.sce.doc/q014220_.htm