1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
| 1. 权限种类 * 读 有关消费消息的任何操作,包括"清除"整个队列(绑定操作的成功) 1. queue.bind: 配置:exchange 2. basic.get 配置: queue 3. basic.consume 配置: queue 4. queue.purge 配置: queue * 写 发布消息(绑定操作的成功) 1. queue.bind 配置: queue 2. basic.publish 配置: exchange * 配置 队列和交换器的创建和删除 1. exchange.declare 配置: exchange 2. exchange.delete 配置: exchange 3. queue.declare 配置: queue 4. queue.delete 配置: queue 2. 每条访问规则组成 * 被授权访问的用户 * 权限控制应用的vhost * 需要授予读/写/配置权限组合 * 权限范围(仅应用于客户端命名队列/交换器;仅用于服务端命名队列/交换器;两者兼备) *注意: 访问控制条目是无法跨越vhost的* 3. 授权案例 * 完全访问控制 rabbitmqctl set_permissions -p vhost-name username ".\*" ".\*" ".\*" * 第一个".\*"表示配置的权限 * 第二个".\*"表示写的权限 * 第三个".\*"表示读的权限 * 组合使用 rabbitmqctl set_permissions -p vhost-name -s all username "" "check-.\*" ".\*" * 授权在vhost-name上 * -s all 表示任何队列或者交换器 * "" 表示不匹配队列和交换器 * "check-.\*" 表示只匹配以"check-"开头的队列和交换器 * 查看访问策略 rabbitmqctl list_permissions -p vhost-name * 移除一个用户在vhost上的权限 rabbitmqctl clear_permissions -p vhost-name username * 查看用户在所有vhost上的权限 rabbitmqctl list_user_permissions username
|