用IBM MQ中间件开发碰到的MQRC_NOT_AUTHORIZED(2035)问题
我在一台工作站上面部署了MQ服务器,在MQ服务器中我建立了队列管理器MQ_TEST,在该队列管理器中我建立了一个本地队列MQ_Q以及一个服务器连接通道MQ_C,MQ_C中的MCA用户标识默认为空。同时我在该系统中新建了一个MYTEST系统账号,并把该系统账号加入到mqm组中。客户端代码我是用C#开发的应用程序,部署在另外一台笔记本上,部分代码如下:
MQEnvironment.Hostname = "192.168.0.8";
MQEnvironment.Channel ="MQ_C";
MQEnvironment.Port = 1414;
MQEnvironment.UserId = "MYTEST"; //在服务器中创建的系统用户
MQEnvironment.Password = "123";
qMgr = new MQQueueManager("MQ_TEST"); //连接队列管理器
linkStatus = "连接队列管理器:" + HostName + "成功!";
当我在运行客户端程序时,执行到qMgr = new MQQueueManager("MQ_TEST"); 这句时就会报MQRC_NOT_AUTHORIZED的异常。调了好久没能成功,请大虾们指导!
-
回复于 2012-01-18 15:57:02 #1 得分:0这是授权问题
查看IBM的infocenter看看怎么授权0 0
-
01-30 16:04:27 #2 得分:02035是说你没有权限。 给你的当前用户设置权限就可以了。0 0
-
回复于 2012-02-06 16:05:41 #3 得分:0请参看我写的一篇博客:
http://blog.csdn.net/javalover_yao/article/details/63874600 0
-
回复于 2012-02-08 15:07:07 #4 得分:0楼上的博客说的对。
你这种情况,把用户MYTEST加到用户组mqm中,重启MQ管理器。
https://bbs.csdn.net/topics/380091412
=====================================================================================/p>
在was中配置队列链接工厂的JNDI的时候,配置工作完成,点击测试连接,确报了一个令人伤心的错误,错误代码2035 权限有问题,头疼啊,有的机器是好好的,有的机器确不行,然后一番百度和Google,终于找到一个有用的帖子:
http://space.itpub.net/14789789/viewspace-374497
原文如下:
我们的系统使用了ibm mq,用户用来向国家局上报文件和接收文件,前几天用户说上报一直不成功。由于
开发这块程序的人已经辞职了,我觉定在我的机器部署一套,研究一下。我的思路:
在我的机器上安装mq,建立两个队列,一个用来接收,一个用来发送;在另外一台机器上,发布应用程序,通
过java client向我的机器的队列发送消息和接收消息。
mq安装成功,队列管理器、队列、通道也都建起来了,用mq自带的api检测程序检测也成功了。
接下来,在另外一台机器上通过程序发送消息,结果就是不行,总是报原因码是2035的错误,折腾了一下
午,我终于明白了故障原因,原来是用户权限,在网上找到了解决办法。
通常情况下,MQ客户端与MQ服务器端通讯时,使用MQ服务器端的服务连接通道在MCAUSER属性中指定的
用户作为MQ客户端连上来时使用的用户,如果MCAUSER属性值为空,则使用MQ客户端所在操作系统使用
的用户作为MQ客户端连上来时使用的用户。通讯时,报2035错误,就是由于客户端与服务器端通讯时所使
用的用户没有权限造成的。解决办法有两种:
ALTER CHANNEL(DT_SERVER_CHL) CHLTYPE(SVRCONN) MCAUSER("MUSR_MQADMIN")
一定要确保MUSR_MQADMIN用户为mqm组的成员,具体办法随MQ 服务器所在的操作系统而定,在此就不再赘述。
到MQ服务器所在的操作系统中。
例如,若MQ客户端使用的用户为ADMIN,则在MQ服务器端添加用户ADMIN,并保证此用户在MQ服务器端的mqm组中,以及有执行队列管理器上的操作所必需的权限。
这两种办法我都试了,都可以。
至此,通过java程序向mq发送消息和接收消息我都调试通过了。
如下右击你的通道名称,然后点击属性,在弹出的窗口里面选择MCA,并在MCA用户表示处输入:MUSR_MQADMIN

还有一种方案:
找到mq的安装目录下的bin目录,在cmd环境下执行命令runmqsc 然后执行命令 alter qmgr chlauth(disabled) 把权限验证下掉就可以了
出处:https://blog.csdn.net/yaominhua/article/details/6387460
用IBM MQ中间件开发碰到的MQRC_NOT_AUTHORIZED(2035)问题的更多相关文章
- (转)IBM MQ 创建以及常见问题集锦
背景:这篇文章还是很全面的,但是很杂乱 后面慢慢整理吧! 1 MQ 消息队列+发送队列+消息通道 接收通道名称与发送端的发送通道名称要一致,修改通道信息后要执行 start channle(chlna ...
- IBM MQ 创建以及常见问题集锦
消息队列+发送队列+消息通道 接收通道名称与发送端的发送通道名称要一致,修改通道信息后要执行 start channle(chlname) 重启通道.常用的MQ命令 66.0.42.240 用户 mq ...
- IBM MQ 2035 或 2013认证错误的解决方法
第一种方法: ALTER CHL(SYSTEM.BKR.CONFIG) CHLTYPE(SVRCONN) ALTER CHL(SYSTEM.ADMIN.SVRCONN) CHLTYPE(SVRCONN ...
- 连接IBM MQ原因码报2035的错误解决办法
我们的系统使用了ibm mq,用户用来向国家局上报文件和接收文件,前几天用户说上报一直不成功.由于 开发这块程序的人已经辞职了,我觉定在我的机器部署一套,研究一下.我的思路: 在我的机器上安装mq,建 ...
- IBM MQ reason code list
The reason code parameter (Reason) is a qualification to the completion code parameter (CompCode). I ...
- 消息队列 ---常用的 MQ 中间件
目前市面上比较常用的 MQ(Message Queue,消息队列)中间件有 RabbitMQ.Kafka.RocketMQ,如果是轻量级的消息队列可以使用 Redis 提供的消息队列,其中 Redis ...
- IBM MQ消息中间件jms消息中RHF2消息头的处理
公司的技术平台在和某券商对接IBM MQ消息中间件时,发送到MQ中的消息多出了消息头信息:RHF2,造成消息的接收处理不正常.在此记录此问题的处理方式. 在IBM MQ中提供了一个参数 targetC ...
- IBM Mq Spring JMS 的xml配置
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.spr ...
- IBM MQ 使用指南
一.MQ基本操作 MQ中有几个很重要的组件:队列管理器(QueueManager).队列(Queue)和通道(Channel).其基本的操作方法如下: 1)创建队列管理器 crtmqm –q QMg ...
随机推荐
- 深入理解java虚拟机---虚拟机工具jmap(十六)
原文: https://www.cnblogs.com/myna/p/7573843.html jmap JVM Memory Map命令用于生成heap dump文件,如果不使用这个命令,还可以使用 ...
- Spring Boot学习笔记----POI(Excel导入导出)
业务:动态生成模板导出Excel,用户修改完再导入Excel. Spring boot + bootstrap + poi 1.添加Dependence <dependency> < ...
- 04 复制删除行为IDA反汇编
(很久以前的学习记录,放到博客上来) (IDA5.0版的不知道为何反汇编进去每一行被截断的景象,惨不忍睹......明明是个正版的.只好回来用拷过来的破解版,依然有一些叽里呱啦的问题,懒得管了, ...
- git相关知识点
git add 和 git stage 有什么区别: 工作区(Working Directory).暂存区(Stage)和历史记录区(History)以及转换关系不能少: git stage 是 gi ...
- ASCII码,utf-8
ASCII:0-127表示英文,128-255每个国家编码不一样,汉字要使用两个字节,为了和0-127区别,首位都要是1,uriEncode就是把字符转换成ASCII码. utf-8,一个字节的,和a ...
- vuejs 在移动端调起键盘并触发‘前往’按钮
<template> <div class="display"> <form @submit.prevent> <input @keyup ...
- Vue 之 Vue.nextTick()
异步更新队列 可能你还没有注意到,Vue 异步执行 DOM 更新.只要观察到数据变化,Vue 将开启一个队列,并缓冲在同一事件循环中发生的所有数据改变.如果同一个 watcher 被多次触发,只会一次 ...
- [LeetCode&Python] Problem 530. Minimum Absolute Difference in BST
Given a binary search tree with non-negative values, find the minimum absolute difference between va ...
- VS、ReSharper 设置修改代码颜色、提高代码辨识度!附VS超实用快捷!
ReSharper 配置代码颜色 本文提供全流程,中文翻译. Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) Chinar -- 心 ...
- centos 7 防火墙的使用 firewalld
开启端口命令 输入firewall-cmd --query-port=6379/tcp,如果返回结果为no,那么证明6379端口确实没有开启. 输入firewall-cmd --add-port=63 ...