You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MQ容器系统队列授权配置求助:为App用户增删权限

IBM MQ 容器场景下权限配置解决方案

一、runmqsc QM1 中正确的权限配置命令

先通过runmqsc QM1进入队列管理器命令行,再执行以下命令:

# 授予app用户连接队列管理器的基础权限(解决无法登录的核心问题)
SET AUTHREC PROFILE('QM1') PRINCIPAL('app') OBJTYPE(QMGR) AUTHADD(CONNECT,INQ)

# 为SYSTEM.ADMIN.COMMAND.QUEUE授予必要权限(用于查看队列等管理操作)
SET AUTHREC PROFILE('SYSTEM.ADMIN.COMMAND.QUEUE') PRINCIPAL('app') OBJTYPE(QUEUE) AUTHADD(BROWSE,DSP,INQ,PUT)

# 为SYSTEM.DEFAULT.MODEL.QUEUE授予必要权限(用于创建临时队列,辅助查看队列列表)
SET AUTHREC PROFILE('SYSTEM.DEFAULT.MODEL.QUEUE') PRINCIPAL('app') OBJTYPE(QUEUE) AUTHADD(DSP,GET,PUT)

# 刷新安全配置使更改生效
REFRESH SECURITY(*) TYPE(CONNAUTH)

说明:之前app用户无法登录,是因为缺少队列管理器的CONNECT和INQ基础权限,必须先配置该权限,再设置队列相关权限。

二、容器部署场景下的Linux命令

1. 添加权限的命令(宿主机直接执行,无需进入容器)

docker exec -it <你的MQ容器名称或ID> runmqsc QM1 << EOF
SET AUTHREC PROFILE('QM1') PRINCIPAL('app') OBJTYPE(QMGR) AUTHADD(CONNECT,INQ)
SET AUTHREC PROFILE('SYSTEM.ADMIN.COMMAND.QUEUE') PRINCIPAL('app') OBJTYPE(QUEUE) AUTHADD(BROWSE,DSP,INQ,PUT)
SET AUTHREC PROFILE('SYSTEM.DEFAULT.MODEL.QUEUE') PRINCIPAL('app') OBJTYPE(QUEUE) AUTHADD(DSP,GET,PUT)
REFRESH SECURITY(*) TYPE(CONNAUTH)
EOF

2. 移除权限的命令

若需撤销上述权限,执行:

docker exec -it <你的MQ容器名称或ID> runmqsc QM1 << EOF
# 移除队列管理器权限
SET AUTHREC PROFILE('QM1') PRINCIPAL('app') OBJTYPE(QMGR) AUTHRMV(CONNECT,INQ)

# 移除SYSTEM.ADMIN.COMMAND.QUEUE权限
SET AUTHREC PROFILE('SYSTEM.ADMIN.COMMAND.QUEUE') PRINCIPAL('app') OBJTYPE(QUEUE) AUTHRMV(BROWSE,DSP,INQ,PUT)

# 移除SYSTEM.DEFAULT.MODEL.QUEUE权限
SET AUTHREC PROFILE('SYSTEM.DEFAULT.MODEL.QUEUE') PRINCIPAL('app') OBJTYPE(QUEUE) AUTHRMV(DSP,GET,PUT)

REFRESH SECURITY(*) TYPE(CONNAUTH)
EOF

注意:替换<你的MQ容器名称或ID>为实际容器名或ID,可通过docker ps查看。

内容的提问来源于stack exchange,提问作者user10820864

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 10:52:44