1.声明
当前内容主要用于本人学习和复习之用,主要内容为如何设定和撤销某个用户的权限,为当前的用户设定vhost
当前内容主要来源:RabbitMQ官方文档
2.查看有哪些访问控制的参数
主要有
- 清空某个vhost的某个用户的权限
- 清空用户的topic权限对于一个vhost或者一个exchange
- 列出所有用户的在一个vhost所有权限
- 列出所有用户在一个vhost上面的topic权限
- 列出一个用户的在所有vhost的所有权限
- 列出出一个用户的topic权限
- 列出所有的vhost
- 设置一个用户在某个vhost上面的权限
- 设置一个用户在某个exchange或者某个vhost上的topic权限
3.创建并测试
首先创建一个用户并设置tag为administrator
rabbitmqctl add_user hello 123456
rabbitmqctl set_user_tags hello administrator
1.列出所有用户在/上面的所有权限
rabbitmqctl list_permissions --vhost /
2.列出hello用户在/上面的所有权限
rabbitmqctl list_user_permissions --vhost / hello
3.列出所有用户在/上面的topic的权限
rabbitmqctl list_topic_permissions --vhost /
4.为当前的hello用户添加在/的topic权限
rabbitmqctl set_topic_permissions --vhost / hello .* .* .*
5.列出hello用户在/上面的topic权限
rabbitmqctl list_user_topic_permissions hello
6.移除hello在/上面的topic权限
rabbitmqctl clear_topic_permissions --vhost / hello
7.列出所有的vhost
rabbitmqctl list_vhosts
8.移除用户hello在/上面的权限
rabbitmqctl clear_permissions --vhost / hello
9.设置用户hello在/上面的权限
# windows下面
rabbitmqctl set_permissions --vhost / hello .* .* .*
# linux 下面
./rabbitmqctl set_permissions --vhost / hello '.*' '.*' '.*'
4.总结
1.对于一个新创建的用户,需要分配tag让该用户可以通过ui界面登录
2.如果需要其他的操作需要分配特定的vhost和对应的permissions
以上纯属个人见解如有问题请联本人!