用户角色分类
none
通常就是普通的生产者和消费者,无法登录控制台,不能访问management plugin
,通常就是普通的生产者和消费者
management
普通管理者,仅可登陆管理控制台(启用management plugin
的情况下),无法看到节点信息,也无法对policies
进行管理。可以通过AMQP
做的任何事外加:
列出自己可以通过AMQP
登入的virtual hosts
查看自己的virtual hosts
中的queues, exchanges
和 bindings
查看和关闭自己的channels
和 connections
查看有关自己的virtual hosts
的“全局”的统计信息,包含其他用户在这些virtual hosts
中的活动
policymaker
策略制定者,management
可以做的任何事外加:
查看、创建和删除自己的virtual hosts
所属的policies
和parameters
monitoring
监控者,management
可以做的任何事外加:
列出所有virtual hosts
,包括他们不能登录的virtual hosts
查看其他用户的connections
和channels
查看节点级别的数据如clustering
和memory
使用情况
查看真正的关于所有virtual hosts
的全局的统计信息
同时可以查看rabbitmq
节点的相关信息(进程数,内存使用情况,磁盘使用情况等)
administrator
超级管理员,policymaker
和monitoring
可以做的任何事外加:
创建和删除virtual hosts
查看、创建和删除users
查看创建和删除permissions
关闭其他用户的connections
RabbitMQ Control
使用Web管理界面可以实现RabbitMQ的大部分常用功能,但是有些功能WebUI是做不到的,如:开启/关闭RabbitMQ应用程序和集群的管理等。RabbitMQ Control是RabbitMQ的命令行管理工具,可以调用所有的RabbitMQ内置功能,主命令是
rabbitmqctl
创建用户
rabbitmqctl add_user {用户名} {密码}
设置权限
rabbitmqctl set_user_tags {用户名} {权限}
例:创建一个超级用户
rabbitmqctl add_user admin1 admin1
rabbitmqctl set_user_tags admin1 administrator
查看用户列表
rabbitmqctl list_users
为用户赋权
// 使用户user1具有vhost1这个virtual host中所有资源的配置、写、读权限以便管理其中的资源
rabbitmqctl set_permissions -p vhost1 user1 '.*' '.*' ' .*'
查看权限
rabbitmqctl list_user_permissions user1
rabbitmqctl list_permissions -p vhost1
清除权限
rabbitmqctl clear_permissions [-p VHostPath] User
删除用户
rabbitmqctl delete_user Username
修改用户密码
rabbitmqctl change_password Username Newpassword
激活RabbitMQ’s Management Plugin
找到安装rabbitMQ的路径,然后切换到sbin
的文件夹,管理员运行Shell脚本
rabbitmq-pluginsenable rabbitmq_management
启动监控管理器
rabbitmq-plugins enable rabbitmq_management
关闭监控管理器
rabbitmq-plugins disable rabbitmq_management
启动rabbitmq
net start RabbitMQ
关闭rabbitmq
net stop RabbitMQ
查看所有的队列
rabbitmqctl list_queues
清除所有的队列
rabbitmqctl reset
查看已有用户及用户的角色
rabbitmqctl list_users
新增虚拟主机
rabbitmqctl add_vhost vhost_name
将新虚拟主机授权给新用户
rabbitmqctl set_permissions -p vhost_name username '.*' '.*' '.*'
设置用户权限
rabbitmqctl set_permissions -p VHostPath username ConfP WriteP ReadP
查看(指定hostpath)所有用户的权限信息
rabbitmqctl list_permissions [-p VHostPath]
查看指定用户的权限信息
rabbitmqctl list_user_permissions username
清除用户的权限信息
rabbitmqctl clear_permissions [-p VHostPath] username