第一种方法:
ALTER CHL(SYSTEM.BKR.CONFIG) CHLTYPE(SVRCONN)
ALTER CHL(SYSTEM.ADMIN.SVRCONN) CHLTYPE(SVRCONN)
ALTER CHL(SYSTEM.ADMIN.SSL.CHL) CHLTYPE(SVRCONN) SSLCAUTH(REQUIRED) SSLCIPH(NULL_SHA)
第二种方法:
当C# 或 java 连接 IBM MQ 是出现 2035 或 2013的错误时
java的错误提示:
com.ibm.msg.client.jms.DetailedJMSSecurityException: JMSWMQ2013: 为队列管理器“QM1”提供的安全性认证无效,连接方式为“Client”,主机名为“9.186.105.212(1414)”。 请检查提供的用户名和密码在您连接至的队列管理器中是否正确。
at com.ibm.msg.client.wmq.common.internal.Reason.reasonToException(Reason.java:540)
at com.ibm.msg.client.wmq.common.internal.Reason.createException(Reason.java:236)
at com.ibm.msg.client.wmq.internal.WMQConnection.<init>(WMQConnection.java:440)
at com.ibm.msg.client.wmq.factories.WMQConnectionFactory.createV7ProviderConnection(WMQConnectionFactory.java:7062)
at com.ibm.msg.client.wmq.factories.WMQConnectionFactory.createProviderConnection(WMQConnectionFactory.java:6453)
at com.ibm.msg.client.jms.admin.JmsConnectionFactoryImpl.createConnection(JmsConnectionFactoryImpl.java:295)
at com.ibm.mq.jms.MQConnectionFactory.createCommonConnection(MQConnectionFactory.java:6230)
at com.ibm.mq.jms.MQTopicConnectionFactory.createTopicConnection(MQTopicConnectionFactory.java:114)
at com.jn.test.MQPublisher.main(MQPublisher.java:39)
Caused by: com.ibm.mq.MQException: JMSCMQ0001: WebSphere MQ 调用失败,完成代码为“2”(“MQCC_FAILED”),原因为“2035”(“MQRC_NOT_AUTHORIZED”)。
at com.ibm.msg.client.wmq.common.internal.Reason.createException(Reason.java:223)
... 7 more
解决方法:
登录服务器 进入 IBM mq 所在目录 (linux一般在/opt/mqm下),再进入bin目录 切换到mqm用户(su mqm),输入runmqsc QM1 (QM1 是你的队列管理器的名字),进入命令模式,输入 ALTER CHL(SYSTEM.DEF.SVRCONN) CHLTYPE(SVRCONN) MCAUSER('mqm')
SYSTEM.DEF.SVRCONN 是通道的名字
SVRCONN 是通道的类型
mqm 是mq的用户
一般linux安装完mq后 都会自动出现mqm用户。
本文转自:http://jn1981.blog.163.com/blog/static/53864502011102842828167/