Ibm mq websphere MQ 7.0-接受任何用户

Ibm mq websphere MQ 7.0-接受任何用户,ibm-mq,Ibm Mq,连接到Websphere MQ 7.0服务器的客户端收到错误代码2035 这是因为每个用户都使用自己的用户名连接。他们无法改变这种行为。将此作为一种解决方法进行修复非常容易。我只需要将用户名添加到mqm组(linux)及其工作区 问题是,我无法将所有用户添加到mqm组。这种情况一直在变化 是否有一种方法允许每个人都连接和发送数据?如果忽略允许任何人访问MQ资源的安全影响,则可以通过伪组“nobody”授予该权限。在Unix平台上,每个用户都被视为该组的成员,即使该组实际上并不存在 所以 将授予所

连接到Websphere MQ 7.0服务器的客户端收到错误代码2035

这是因为每个用户都使用自己的用户名连接。他们无法改变这种行为。将此作为一种解决方法进行修复非常容易。我只需要将用户名添加到mqm组(linux)及其工作区

问题是,我无法将所有用户添加到mqm组。这种情况一直在变化


是否有一种方法允许每个人都连接和发送数据?

如果忽略允许任何人访问MQ资源的安全影响,则可以通过伪组“nobody”授予该权限。在Unix平台上,每个用户都被视为该组的成员,即使该组实际上并不存在

所以

将授予所有用户连接的权限。类似的事情也可以通过通配符('**')来设置队列等的权限。

正如Mark所说:


如果您忽略了允许任何人访问的安全影响 MQ资源

我建议您学习如何正确地执行MQ安全性,因为这非常容易。您可以使用用户已经在其中的组,也可以创建新的组,并只向其中添加那些特定的用户标识。请不要将非MQAdmin用户ID放入“mqm”组中。安全性差,安全性很差

假设您有一组以“ABC”开头的队列,支持团队需要完全访问这些队列。您可以创建一个名为“abc_rw”(允许读/写)的组,并放置所有需要完全权限的用户标识。因此,setmqaut命令将是:

setmqaut -m {QM_NAME} -t qmgr -g abc_rw +connect +inq +dsp
setmqaut -m {QM_NAME} -n ABC.** -t queue -g abc_rw +allmqi +dsp
其中{QM_NAME}是队列管理器的名称

第1行设置组“abc_rw”访问队列管理器的权限。 第二行允许组“abc\U rw”访问所有以“abc”开头的队列

就这样。就这么简单。在发出任何setmqaut命令后,不要忘记发出REFRESH SECURITY命令

现在,如果用户使用的工具列出了队列管理器的队列,那么您需要授予他们这样做的权限。同样,这很容易

setmqaut -m {QM_NAME} -n SYSTEM.ADMIN.COMMAND.QUEUE -t queue -g abc_rw +put +inq +dsp
setmqaut -m {QM_NAME} -n SYSTEM.DEFAULT.MODEL.QUEUE -t queue -g abc_rw +get +inq +dsp
第1行授予组“abc_rw”将消息放入命令队列的权限,MQ工具会执行此操作以请求队列列表。
第二行为组“abc_rw”提供了使用模型队列创建临时动态队列的访问权限,MQ工具将在该队列中读取回复消息。

MQ 7.0自2015年9月30日起不再受支持。7.1也失去支持,7.5在11天内失去支持。如果连接到MQ的用户不是MQ管理员,那么将他们添加到mqm组是一个大的安全问题。这些用户是作为MQ客户端通过网络连接到SVRCONN通道,还是在绑定模式下连接同一服务器上的本地。@JoshMc-客户端是作为MQ客户端通过网络连接到SVRCONN通道的。那么,将它们添加到mqm组仍然是一个安全问题吗?除了SVRCONN通道之外,他们没有访问服务器的权限。是的,这仍然是一个安全问题。mqm组中的任何用户都具有管理权限。远程用户可以在队列管理器上定义、更改和删除对象。Roger的回答举例说明了如何向特定应用程序队列提供权限,而无需将用户添加到mqm组。请注意,“发出任何setmqaut命令后,
刷新安全性
不是必需的。”,只有在您已经应用了OAM权限的组中添加或删除了以前访问过MQ的用户,并且您希望MQ知道此更改时,才需要此选项。刷新只会清除此缓存中的用户组成员身份。在繁忙的系统上,如果底层操作系统用户存储库无法处理用户组成员身份的新查询,则发出<代码>刷新安全性的行为可能会导致应用程序出现2035错误。@JoshMc 90%的时间用户使用2035的RC失败,然后权限被更改/更新,大多数人都不知道安全权限已缓存,在不发出刷新安全命令的情况下重试,但再次失败。用户首次访问队列管理器MQ时,将缓存用户当时所属的组列表,任何进一步的OAM检查都将针对与该用户关联的此缓存组列表进行。每次重新启动队列管理器或发出
刷新安全性
命令时,都会清除此缓存。在两种情况下,您可能需要运行
刷新安全性
:1。用户在成为您授予OAM权限的组的成员之前尝试访问MQ,此时MQ将缓存他们不是该组的成员。2.您已从组中删除用户,但MQ仍允许访问,因为它已缓存该用户是该组的成员。对于这两种情况,
REFRESH SECURITY
将允许MQ查找组成员身份。
setmqaut -m {QM_NAME} -n SYSTEM.ADMIN.COMMAND.QUEUE -t queue -g abc_rw +put +inq +dsp
setmqaut -m {QM_NAME} -n SYSTEM.DEFAULT.MODEL.QUEUE -t queue -g abc_rw +get +inq +dsp