gpt4 book ai didi

security - WebSphere 7,配置没有用户 ID : MQRC_NOT_AUTHORIZED 的 JMS Q 连接工厂

转载 作者:行者123 更新时间:2023-12-04 10:43:55 25 4
gpt4 key购买 nike

我有一个 WebSphere 6 实例和一个 WebSphere 7 实例。每个实例都有一个 WebSphere MQ 消息传递提供程序、一个队列连接工厂和一个以类似方式配置的队列。所有用户 ID 字段都保留为空,身份验证别名保留为“无”。

在 WAS6 中它工作正常。

在 WAS7 中,我收到一个错误:

JMSWMQ2013: The security authentication was not valid that was supplied for QueueManager 'MYQMNGR' with connection mode 'Client' and host name '10.11.22.33(51001)'.; nested exception is com.ibm.msg.client.jms.DetailedJMSSecurityException: JMSWMQ2013: The security authentication was not valid that was supplied for QueueManager 'MYQMNGR' with connection mode 'Client' and host name '10.11.22.33(51001)'. Please check if the supplied username and password are correct on the QueueManager you are connecting to; nested exception is com.ibm.mq.MQException: JMSCMQ0001: WebSphere MQ call failed with compcode '2' ('MQCC_FAILED') reason '2035' ('MQRC_NOT_AUTHORIZED').

如果没有提供用户 ID,与 WAS6 相比,WAS7 连接到 MQ 的方式有什么不同?

我对那个 MQ(版本 7)没有任何可见性或访问权限,从 WAS 6 访问时不需要用户 ID,所以我需要让 WAS7 以相同的方式工作。

最佳答案

在 WAS 6 中,如果您将管理面板中的用户 ID 留空,则会向 WMQ 传递一个空白。即使 WMQ 无法确定远程用户,WMQ 也会运行该 channel ,在这种情况下,该 channel 以消息 channel 代理 (MCA) 的权限运行,该权限始终是管理性的。因此,在 V6 中,它可以工作。

从 V7 开始,如果您在 WAS 管理面板中将其留空,WMQ 客户端将更加努力地确定要传递的 ID,并将获取 JVM ID 并将其传递给 CONNECT。称呼。这就是2035的来源。

解决此问题的正确方法是 WMQ 管理员应在 SVRCONN channel 的 MCAUSER 字段中放置一个低权限 ID。该 ID 应该被授权到 Java EE 服务器需要的任何队列,而不是命令队列和其他各种管理队列。这将解决 WAS 7 发送无法识别的 ID 的问题,并防止任何类型的远程客户端获得对该 channel 的管理员访问权限。

另一种方法是转至 WAS 管理面板以获取 WMQ 连接并将用户 ID 设置为 mqm . (如果 WMQ 在分布式非 Windows 系统上运行,这会起作用。如果 WMQ 在 Windows、z/OS 或其他系统上运行,请在此处替换平台等效 ID。)虽然这将使 WAS 启动并运行,但它没有解决QMgr 公开管理访问的事实。

请参阅 WMQ 强化演示和实验室 http://t-rob.net/links有关如何在 QMgr 中识别和修复基础安全漏洞的更全面说明。

关于security - WebSphere 7,配置没有用户 ID : MQRC_NOT_AUTHORIZED 的 JMS Q 连接工厂,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6012579/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com