阿尔忒弥斯AMQ119213:用户:没有权限='消费'



我需要创建一个仅用于从 CI/CD 工具创建队列的用户。

<permission type="createDurableQueue" roles="amq, opadmin"/>
<permission type="deleteDurableQueue" roles="amq"/>
<permission type="createAddress" roles="amq, opadmin"/>
<permission type="deleteAddress" roles="amq, opadmin"/>
<permission type="consume" roles="amq, developer"/>

我得到以下错误

[amq-broker@x01sipscnaq1a bin]$ ./artemis queue create --自动创建地址 --持久 --用户操作管理员 --密码 xxxxxxxx --任播 --保留无消费者 --url tcp://10.91.xxx.xxx:61716 线程"main"中的异常 ActiveMQSecurityException[errorType=SECURITY_EXCEPTION 消息=AMQ119213:用户:opadmin 没有权限='消费' 对于队列 activemq.management.383ccac9-0084-4C44-8F23-7F5C44F7B0DC on 地址 ActiveMQ.management.383ccac9-0084-4C44-8F23-7F5C44F7B0dc.activemq.management.383ccac9-0084-4c44-8f23-7f5c44f7b0dc]

所以改为

<permission type="createDurableQueue" roles="amq, opadmin"/>
<permission type="deleteDurableQueue" roles="amq"/>
<permission type="createAddress" roles="amq, opadmin"/>
<permission type="deleteAddress" roles="amq, opadmin"/>
<permission type="consume" roles="amq, developer, opadmin"/>

它没有错误,但挂起(等待了 30 多分钟(

[amq-broker@x01sipscnaq1a bin]$ ./artemis queue create --silent --自动创建地址 --持久 --用户操作 --密码 xxxxxx --任播 --名称 测试酷刑 --保留无消费者 --网址 tcp://10.91.xxx.xxx:61716 --详细执行 org.apache.activemq.artemis.cli.commands.queue.CreateQueue queue 创建 --静默 --自动创建地址 --持久 --用户操作 --密码xxxxxx --任播 --名称测试酷刑 --保留无消费者 --网址 tcp://10.91.xxx.xxx:61716 --详细 主页::/opt/redhat/amq-broker-7.1.0-hf8, Instance::/opt/redhat/amq-config/cn_soi/broker2b ^C[amq-broker@x01sipscnaq1a bin]$

任何通过核心消息(例如Artemis CLI(执行远程管理操作的用户都需要以下activemq.management.#权限:

  • createNonDurableQueue(在管理地址上创建"订阅"队列以接收管理回复(
  • consume(接收管理层答复(
  • send(发送管理消息(
  • manage(执行管理操作(

您缺少sendmanage操作。 虽然客户端可能不会收到有关此情况的异常,因为它正在发送非持久消息(即发即弃(,但代理上的日志应包含相关错误。

相关内容

  • 没有找到相关文章

最新更新