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 「用户名」
相关推荐
茶杯梦轩2 小时前
从零起步学习RabbitMQ || 第三章:RabbitMQ的生产者、Broker、消费者如何保证消息不丢失(可靠性)详解
分布式·后端·面试
回家路上绕了弯2 天前
深入解析Agent Subagent架构:原理、协同逻辑与实战落地指南
分布式·后端
用户8307196840822 天前
Spring Boot 集成 RabbitMQ :8 个最佳实践,杜绝消息丢失与队列阻塞
spring boot·后端·rabbitmq
用户8307196840824 天前
RabbitMQ vs RocketMQ 事务大对决:一个在“裸奔”,一个在“开挂”?
后端·rabbitmq·rocketmq
初次攀爬者5 天前
RabbitMQ的消息模式和高级特性
后端·消息队列·rabbitmq
初次攀爬者7 天前
ZooKeeper 实现分布式锁的两种方式
分布式·后端·zookeeper
让我上个超影吧8 天前
消息队列——RabbitMQ(高级)
java·rabbitmq
塔中妖8 天前
Windows 安装 RabbitMQ 详细教程(含 Erlang 环境配置)
windows·rabbitmq·erlang
断手当码农8 天前
Redis 实现分布式锁的三种方式
数据库·redis·分布式
初次攀爬者8 天前
Redis分布式锁实现的三种方式-基于setnx,lua脚本和Redisson
redis·分布式·后端