rabbitmq消息隊列用戶和權限管理及問題 Dial: Exception (403) Reason: "username or password not allowed"


RabbitMQ是一個在AMQP基礎上完整的,可復用的企業消息系統。他遵循Mozilla Public License開源協議。

MQ全稱為Message Queue, 消息隊列(MQ)是一種應用程序對應用程序的通信方法。應用程序通過讀寫出入隊列的消息(針對應用程序的數據)來通信,而無需專用連接來鏈接它們。消息傳遞指的是程序之間通過在消息中發送數據進行通信,而不是通過直接調用彼此來通信,直接調用通常是用於諸如遠程過程調用的技術。排隊指的是應用程序通過隊列來通信。隊列的使用除去了接收和發送應用程序同時執行的要求。RabbitMQ可以,多個程序同時使用RabbitMQ ,但是必須隊列名稱不一樣。采用erlang語言,屬於愛立信公司開發的。

 

rabbitmq用戶及權限管理:  用戶管理包括增加用戶,刪除用戶,查看用戶列表,修改用戶密碼。

新增用戶      rabbitmqctl  add_user  Username  Password

刪除用戶      rabbitmqctl  delete_user  Username

修改用戶的密碼     rabbitmqctl  change_password  Username  Newpassword

為用戶分配角色     rabbitmqctl set_user_tags username administrator   #Tags 可以是:administrator 管理員,   monitoring 監控 , management 管理

查看當前用戶列表  rabbitmqctl  list_users

查看當前虛擬主機  rabbitmqctl list_vhosts

查看用戶權限    rabbitmqctl list_user_permissions  Username

設置用戶訪問權限  rabbitmqctl set_permissions -p vhostname username ".*" ".*" ".*"  ##后邊三個.*分別代表:配置權限、寫權限、讀權限     “/”是rabbitmq默認的虛擬機,默認連接

清除用戶權限    rabbitmqctl clear_permissions Username

virtual_host管理

新建virtual_host: rabbitmqctl add_vhost xxx

撤銷virtual_host: rabbitmqctl delete_vhost xxx

查看列表:rabbitmqctl list_vhosts

 隊列管理

查看當前隊列信息:rabbitmqctl list_queues
清除所有隊列:rabbitmqctl reset
 
[root@local ~]# rabbitmqctl add_user admin passwd   ###添加用戶
Creating user "admin" ...
...done.
[root@local ~]# rabbitmqctl change_password  admin pswd1234   ###修改用戶密碼
Changing password for user "admin" ...
...done.
[root@local ~]# rabbitmqctl set_user_tags   admin  management   ###分配用戶角色
Setting tags for user "admin" to [management] ...
...done.
[root@local ~]# rabbitmqctl list_users       ###用戶列表
Listing users ...
admin    [management]
guest    [administrator]
ningnan    [administrator]
...done.
[root@local ~]# rabbitmqctl delete_user admin       ###刪除用戶
Deleting user "admin" ...
...done.
用戶管理命令舉栗
[root@local ~]# rabbitmqctl  list_user_permissions  guest
Listing permissions for user "guest" ...
/    .*    .*    .*
...done.
[root@local ~]# rabbitmqctl set_permissions -p / ningnan ".*" ".*" ".*"
Setting permissions for user "ningnan" in vhost "/" ...
...done.
[root@local ~]# rabbitmqctl  list_user_permissions  ningnan
Listing permissions for user "ningnan" ...
/    .*    .*    .*
...done.
[root@local ~]# rabbitmqctl  clear_permissions  ningnan  ##清除用戶權限
Clearing permissions for user "ningnan" in vhost "/" ...
...done.
[root@local ~]# rabbitmqctl  list_user_permissions  ningnan
Listing permissions for user "ningnan" ...
...done.
權限管理命令舉栗

 

遇見個調用問題   Dial: Exception (403) Reason: "username or password not allowed"

[root@local service_hcloud]# MQ Receive Statistics Version 1.0
Initiate log ...
init read config file ...
QueueName : STATI
Host : 192.168.0.3
userName : guest
PassWord : bs******
2019/03/18 11:26:28 dialing "amqp://192.168.0.3:5672/"
2019/03/18 11:26:31 Dial: Exception (403) Reason: "username or password not allowed"
2019/03/18 11:26:31 running forever

發現是因為服務配置文件寫的有問題. 如圖:

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM