2017-11-27 18 views
0

私はMosquittoに取り組んでおり、バックエンドとしてRedisを使用してユーザー名とパスワードのペア認証とACLの両方を処理しています。私はこれを行うにはJPmens '認証プラグインを使用しています。Mosquitto ACL、Redisバックエンドがスペースを持つトピックで動作しない

mosquitto confに:

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 

すべてが正常に動作しています。しかし、私がスペースを使ってtopicを使い始めると、単にpublish/subscribeから私を否定しました。

私はすでにRedisの中で、このトピックの値を設定している:

SET "user1-sample topic" 2 

Mosquittoログ:

Denied PUBLISH from sample_publisher (d0, q2, r0, m1, 'sample topic', ... (10 bytes)) 

を何かがあり、私はaclクエリの変更のように、この仕事をするために行うかで変更することができますredis-data。

答えて

0

それは次のクエリが動作していることを意味this質問と回答を見て:あなたの答えのための

auth_opt_redis_aclquery GET "%s-%s%" 
+0

おかげではなく、このハックは動作しません。 –

+0

その場合、プラグインでコードを変更する必要があります。githubプロジェクトに対して問題を提起する必要があります。 – hardillb

+0

これを提起します。あなたの提案をありがとう。 –

関連する問題