在Artemis中设置MQTT的安全设置



我正在尝试控制Artemis用户可以在MQTT中使用哪些主题。我有Artemis在工作,可以使用:match="#"发送/侦听MQTT主题,但如果我试图将某些主题的匹配限制为:match="userA.#"(类似于文档中的大多数示例(,我将无法发送也不会接收任何消息。

我进入管理控制台,看到我保留的主题userA/test得到了地址$sys.mqtt.retain.userA.test,所以我尝试在匹配前加前缀,但也不起作用。

因此,我的问题是:您可以使用security-settings限制MQTT主题访问吗?如果可以,您将如何做到这一点?

有没有更好的方法可以做到这一点,例如使用/编写SimpleMQTTInterceptor?

我认为这里的问题在于match与主题名称的语法。你的比赛是userA.#,但你的题目是userA/test。请注意,.不等于/。尝试将您的配置更改为:

<wildcard-addresses>
<delimiter>/</delimiter>
</wildcard-addresses>

然后将您的匹配项更改为userA/#

文档中讨论了通配符语法配置。

相关内容

  • 没有找到相关文章

最新更新