RabbitMQ创建新用户,并给用户添加角色和授权

一、进入容器

1.1 查看运行容器的详细信息

java 复制代码
docker ps -a

1.2 进入容器命令

java 复制代码
docker exec -it 容器ID /bin/bash 

java 复制代码
docker exec -it 容器name bash 

1.3 退出容器命令

java 复制代码
exit   或者 Ctrl+Q+P

二、操作RabbitMQ

2.1 查看用户列表

注:先进入到容器内部

java 复制代码
rabbitmqctl list_users

2.2 创建用户

java 复制代码
rabbitmqctl add_user 「用户名」 「密码」

// 设置用户角色
rabbitmqctl set_user_tags 「用户名」 「角色」

注:此处的角色只是一个标签(角色有administrator、monitoring、policymaker、management等等),也可以自己自定义

|--------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| #### administrator | policymaker和monitoring可以做的任何事外加: 创建和删除virtual hosts 查看、创建和删除users 查看创建和删除permissions 关闭其他用户的connections |
| #### 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节点的相关信息(进程数,内存使用情况,磁盘使用情况等) |
| #### none | 不能访问 management plugin,通常代表普通的生产者和消费者。 |
[RabbitMQ角色释义]

添加用户的告警信息:不要忘记给给用户授予某些虚拟主机权限!参考"rabbitmqctl help set_permissions"以了解更多信息。

2.3 给用户授权

java 复制代码
// 使用户user具有vhost1这个virtual host中所有资源的配置、写、读权限以便管理其中的资源
rabbitmqctl  set_permissions -p vhost1 user '.*' '.*' '.*' 

// 查看权限
rabbitmqctl list_user_permissions user

//查看所有用户的权限
rabbitmqctl list_permissions -p vhost

// 清除权限
rabbitmqctl clear_permissions [-p VHostPath] User
  • 使用户kinny具有 **/**这个virtual host中所有资源的配置、写、读权限以便管理其中的资源
  • 查看用户及 **/**虚拟主机所有用户权限

2.4 修改用户密码

java 复制代码
rabbitmqctl change_password 「用户名」 「新密码」

2.5 删除用户

java 复制代码
//删除用户
rabbitmqctl delete_user 「用户名」
相关推荐
乐维_lwops8 小时前
Zabbix分布式监控体系架构设计与实战优化
分布式·zabbix
我是唐青枫10 小时前
C#.NET 分布式事务 深入解析:TCC、Saga、Outbox 与落地取舍
分布式·c#·.net
少许极端15 小时前
消息队列4-RabbitMQ的高级特性-TTL机制、死信队列、延迟队列
分布式·消息队列·rabbitmq
m0_6515939117 小时前
仓储系统核心编码设计与分布式ID生成实践
大数据·分布式
014-code18 小时前
RabbitMQ 生产端可靠投递(confirm、return、重试)
分布式·消息队列·rabbitmq
014-code18 小时前
RabbitMQ 消费端幂等实战(重复消息、去重、重放怎么处理)
分布式·消息队列·rabbitmq
jasnet_u18 小时前
kafka-3.8.0三节点集群(KRaft协议)
分布式·kafka
问道飞鱼19 小时前
【分布式技术】分布式对象存储服务RustFS
分布式·对象存储·rustfs
8Qi819 小时前
微服务通信:同步 vs 异步与MQ选型指南
java·分布式·微服务·云原生·中间件·架构·rabbitmq
redaijufeng20 小时前
SpringBoot中整合RabbitMQ(测试+部署上线 最完整)
spring boot·rabbitmq·java-rabbitmq