jbg*_*jbg 5 javascript stomp rabbitmq
RabbitMQ + Web Stomp非常棒.但是,我有一些主题我想要以只读或只写方式保密.
看来保护这些的唯一机制是使用rabbitmqctl.我可以创建一个vhost,一个用户,然后应用一些权限.然而,这就是Stomp和Rabbit实现开始崩溃的地方.
主题采取形式:/ topic/blah in stomp,它使用路由键"blah"路由到Rabbit中的"amq.topic".似乎没有办法为路由键设置权限.似乎:
rabbitmqctl set_permissions -p vhost user ".*" ".*" "^amq\.topic"
Run Code Online (Sandbox Code Playgroud)
是我能做的最好的,这仍然是"所有"主题.我也研究过交流,但是在javascript中无法动态定义这些交换.
我在这里错过了什么吗?
参考:http://www.rabbitmq.com/blog/2012/05/14/introducing-rabbitmq-web-stomp/
小智 7
试试这个https://github.com/simonmacmullen/rabbitmq-auth-backend-http 它更加灵活.基本上它是兔子的小型auth插件,它通过http(你有完全控制权)将ACL决定委托给一个脚本,只需要回复"allow"或"deny"
是的,使用RabbitMQ-WebStomp,你几乎只限于普通的RabbitMQ权限集.这不是理想的,但您应该能够正确地获得基本权限设置.看看RabbitMQ文档:
http://www.rabbitmq.com/access-control.html
快速查看stomp文档:
http://www.rabbitmq.com/stomp.html
是的,您无法为特定路由密钥设置权限.也许你应该使用'exchange'语义,加上明确地绑定一个队列交换(即:不使用主题):
/交换/ EXCHANGE_NAME [/ routing_key].
请在rabbitmq-discuss邮件列表上询问有关RMQ权限的具体问题.那里的人真的很有帮助.
不幸的是,对于一些更复杂的场景,RMQ权限集还不够.在这种情况下,您可能希望:
| 归档时间: |
|
| 查看次数: |
4489 次 |
| 最近记录: |