ActiveMQ Artemis JMX访问

问题描述 投票:0回答:1

我想知道是否有办法在Apache Artemis中访问MBean的值。问题是MBean访问受management.xml中定义的角色访问保护。当您访问MBean时,您应该在设置中需要角色,但是从我的Java应用程序中,当我访问MBean时,我无法应用角色。当我使用VisualVM时会发生同样的事情,我可以看到MBean列表,但由于访问限制,我无法看到MBean的值。

一个解决方法是实际从<authorization>中删除management.xml元素或简单地在org.apache.activemq.artemis元素中添加<whitelist>

如果我能通过运行时的反射来做它会很好。我已经尝试了几次但没有取得多大成功。有没有办法在运行时覆盖任何Artemis的属性,这样可以使访问成为可能?

jmx activemq-artemis
1个回答
1
投票

MBean访问限制是代理安全性的一部分。如果没有适当的身份验证和授权,有办法规避安全性或仅在运行时禁用它将是一个重大的安全漏洞。如果MBean访问不受限制,那么任何具有远程访问权限的人都可以关闭代理,甚至删除队列中的所有消息。

如果您想要无限制地访问MBean,您需要更改management.xml,如您所述。

您也可以从应用程序中提交正确的用户名和密码,以便经纪人授予您访问权限。

© www.soinside.com 2019 - 2024. All rights reserved.