所以我已经尝试了我能想到的一切,这是我的最后一招。
我是IBM MQ的新手,我编写了一个小应用程序来连接远程队列管理器。但它不起作用。我收到错误:MQRC_NOT_AUTHORIZED
。
到目前为止,我已经查看了网络,并且已经看到显然我正在使用的userID需要被授予权限才能连接到队列。然而,在与sys-admin交谈后,他们告诉我任何用户ID都可以。
当我连接到没有userID的队列管理器时,消息会通过但不会被处理,因为它需要userID。当我提供userID(任何id)时,我得到上面提到的错误。
我们非常感谢任何帮助,我连接到队列管理器的代码如下:
Hashtable myTable = new Hashtable();
myTable.Add(MQC.USER_ID_PROPERTY, " ");
myTable.Add(MQC.HOST_NAME_PROPERTY, "10.100.89.66");
myTable.Add(MQC.CHANNEL_PROPERTY, "CHARLESAPP.SVRCONN");
myTable.Add(MQC.PORT_PROPERTY, "1412");
mqQueueManager = new MQQueueManager("THOEX",myTable);
答案 0 :(得分:0)
如果让MQ管理员检查队列管理器错误日志AMQERR01.LOG,它将告诉您用户的名称以及他们缺少的权限。然后,您可以使用此信息相应地使用队列管理器上的setauth命令设置权限。