RabbitMQ管理(2)——用户管理
歡迎支持筆者新作:《深入理解Kafka:核心設計與實踐原理》和《RabbitMQ實戰指南》,同時歡迎關注筆者的微信公眾號:朱小廝的博客。
歡迎跳轉到本文的原文鏈接:https://honeypps.com/mq/rabbitmq-management-of-user-management/
在RabbitMQ中,用戶是訪問控制(Access Control)的基本單元,且單個用戶可以跨越多個vhost進行授權。針對一至多個vhost,用戶可以被賦予不同級別的訪問權限,并使用標準的用戶名和密碼來認證用戶。
創建用戶的命令為:rabbitmqctl add_user {username} {password}。其中username表示要創建的用戶名稱;password表示創建用戶登錄的密碼。具體創建一個用戶名為root、密碼為root123的用戶:
可以通過rabbitmqctl change_password {username} {newpassword}命令來更改指定用戶的密碼,其中username表示要變更密碼的用戶名稱,newpassword表示要變更的新的密碼。舉例,將root用戶的密碼變更為root321:
[root@node1 ~]# rabbitmqctl change_password root root321 Changing password for user "root"同樣可以清除密碼,這樣用戶就不能使用密碼登錄了,對于的操作命令為:rabbitmqctl clear_password {username},其中username表示要清楚密碼的用戶名稱。
使用rabbitmqctl authenticate_user {username} {password}可以通過密碼來驗證用戶,其中username表示需要被驗證的用戶名稱,password表示密碼。下面示例中分別采用root321和root322來驗證root用戶:
刪除用戶的命令是:rabbitmqctl delete_user {username},其中username表示要刪除的用戶名稱。刪除用戶root的示例如下:
[root@node1 ~]# rabbitmqctl delete_user root Deleting user "root"rabbitmqctl list_users命令可以用來羅列當前的所有用戶。每個結果行都包含用戶名稱,其后緊跟用戶的角色(tags)。示例代碼如下:
[root@node1 ~]# rabbitmqctl list_users Listing users guest [administrator] root []用戶的角色分為5種類型:
- none:無任何角色。新創建的用戶的角色默認為none。
- management:可以訪問Web管理頁面。Web管理頁面在5.3章節中會有詳細介紹。
- policymaker:包含management的所有權限,并且可以管理策略(policy)和參數(parameter)。詳細參考5.5章節。
- monitoring:包含management的所有權限,并且可以看到所有連接(connections)、信道(channels)以及節點相關的信息。
- administartor:包含monitoring的所有權限,并且可以管理用戶、虛擬主機、權限、策略、參數等等。administator代表了最高的權限。
用戶的角色可以通過rabbitmqctl set_user_tags {username} {tag …}命令設置。其中username參數表示需要設置角色的用戶名稱;tag參數用于設置0個、1個或者多個的角色,設置之后任何之前現有的身份都會被刪除。使用示例如下:
歡迎跳轉到本文的原文鏈接:https://honeypps.com/mq/rabbitmq-management-of-user-management/
歡迎支持筆者新作:《深入理解Kafka:核心設計與實踐原理》和《RabbitMQ實戰指南》,同時歡迎關注筆者的微信公眾號:朱小廝的博客。
總結
以上是生活随笔為你收集整理的RabbitMQ管理(2)——用户管理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: RabbitMQ管理(1)——多租户与权
- 下一篇: RabbitMQ管理(3)——Web端管