我正在研究 Mosquitto,并使用 Redis 作为后端来处理用户名/密码对身份验证和 ACL。我正在使用 JPmens ' 用于执行此操作的身份验证插件。
蚊子 session :
auth_opt_backends redis
auth_plugin /etc/mosquitto/auth-plug.so
auth_opt_redis_host 127.0.0.1
auth_opt_redis_port 6379
auth_opt_redis_userquery GET %s
auth_opt_redis_aclquery GET %s-%s
一切正常。但是当我开始使用带空格的主题时,它只是拒绝我发布/订阅。
我已经在 Redis 中设置了这个主题值:
SET "user1-sample topic" 2
蚊子日志:
Denied PUBLISH from sample_publisher (d0, q2, r0, m1, 'sample topic', ... (10 bytes))
我可以做些什么来使这项工作正常进行,例如 acl 查询更改或 redis 数据更改。
最佳答案
查看this question and answers 它暗示以下查询可能有效:
auth_opt_redis_aclquery GET "%s-%s%"
关于redis - Mosquitto ACL,Redis 后端不适用于有空间的主题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47505967/