rabbitmq權限設置

RabbitMQ中的角色分爲如下五類:none、management、policymaker、monitoring、administrator 
(1) 超級管理員(administrator) 
可登陸管理控制檯(啓用management plugin的情況下),可查看所有的信息,並且可以對用戶,策略(policy)進行操作。

(2) 監控者(monitoring) 
可登陸管理控制檯(啓用management plugin的情況下),同時可以查看rabbitmq節點的相關信息(進程數,內存使用情況,磁盤使用情況等)

(3) 策略制定者(policymaker) 
可登陸管理控制檯(啓用management plugin的情況下), 同時可以對policy進行管理。但無法查看節點的相關信息(上圖紅框標識的部分)。

(4) 普通管理者(management) 
僅可登陸管理控制檯(啓用management plugin的情況下),無法看到節點信息,也無法對策略進行管理。

(5) 其他(none) 
無法登陸管理控制檯,通常就是普通的生產者和消費者。

新建用戶:rabbitmqctl add_user user password

刪除用戶: rabbitmqctl delete_user user

改密碼: rabbimqctl change_password {username} {newpassword}

設置用戶角色的命令爲: 
rabbitmqctl set_user_tags User Tag 
rabbitmqctl set_user_tags hncscwc monitoring policymaker // 可以設置多個角色

設置用戶權限 
rabbitmqctl set_permissions -p VHostPath User ConfP WriteP ReadP 
// 具有/vhost1這個virtual host中所有資源的配置、寫、讀權限以便管理其中的資源 
rabbitmqctl set_permissions -p /vhost1 user_admin ‘.’ ‘.’ ‘.*’ 
set_permissions [-p ] 其中, 的位置分別用正則表達式來匹配特定的資源,如’^(amq.gen.*|amq.default)$’ 可以匹配server生成的和默認的exchange,’^$’不匹配任何資源

查看(指定hostpath)所有用戶的權限信息 
rabbitmqctl list_permissions [-p VHostPath]

查看指定用戶的權限信息 
rabbitmqctl list_user_permissions User

清除用戶的權限信息 
rabbitmqctl clear_permissions [-p VHostPath] User

用戶權限 
用戶權限指的是用戶對exchange,queue的操作權限,包括配置權限,讀寫權限。 
配置權限會影響到exchange,queue的聲明和刪除。 
讀寫權限影響到從queue裏取消息,向exchange發送消息以及queue和exchange的綁定(bind)操作。 
例如: 將queue綁定到某exchange上,需要具有queue的可寫權限,以及exchange的可讀權限; 
向exchange發送消息需要具有exchange的可寫權限; 
從queue裏取數據需要具有queue的可讀權限。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章