从7.5原因升级到IBM MQ 8.0之后,我出现了一个错误 -
在MQ 8.0中,引入了一个新功能,要求MQ管理员使用远程访问来提供用户标识和密码。未提供用户标识和密码或密码不正确时
错误:2035代码:2 队列管理器配置为需要用户ID和密码,但没有提供。
此问题在link中有更好的描述。 有三种情况可供讨论。我的解决方案将落在场景A)MQ示例:为MQ客户端应用程序提供用户和密码
我试图使用程序从MQ读取。有没有办法可以将用户名和密码作为命令行参数的一部分传递,而不是在提示时输入。因为我的程序调用了这个exe。
$ amqsputc qName qMgr
答案 0 :(得分:4)
IBM提供了一个名为mqccred
的客户端通道安全出口来执行此任务。完整文档位于提供的链接中,但通常需要以下内容:
runmqccred
命令以模糊密码。请注意,Java / JMS程序可以轻松修改,退出主要用于使用本机C API或在其上编译的程序。
答案 1 :(得分:3)
如果您的客户端无法提供用户名/密码,您可以在MQ 8.0队列管理器中禁用用户名/密码要求:
答案 2 :(得分:0)
答案 3 :(得分:0)
更新了MQ示例以允许指定用户ID,如果设置,则提示您输入密码: MQ Bitesize Blogging
有些采用新的可选命令行参数[-u User],其他人检查是否存在MQSAMP_USER_ID环境变量。