我正在使用mosquitto-auth-plugin(HTTP后端)运行Mosquitto代理(版本1.4.14)。客户端必须使用用户名和密码进行身份验证,并在某些情况下通过acl-requirements。
似乎所有经过身份验证的用户都可以订阅主题“#”,其中显示了所有主题的所有发布。
在ACL中,通配符#似乎已经被主题名替换,所以我无法拒绝它的订阅。
是否可以拒绝订阅配置中的所有主题?
如果主题以$ chr开头,那么问题就解决了,但MQTT规范说:'应用程序不能使用具有前导$字符的主题用于自己的目的。 (4.7.2以$开头的主题)
正如评论中所提到的,即使主题被ACL阻止,客户端也始终能够订阅主题,他们将不会收到有关这些主题的任何消息。