Featured image of post RabbitMQ 添加使用者與分組

RabbitMQ 添加使用者與分組

使用以下指令開啟 RabbitMQ 的控制台: sudo rabbitmqctl add_user <u…

  1. 使用以下指令開啟 RabbitMQ 的控制台:
1
sudo rabbitmqctl add_user <username> <password>  

例如,若要添加名為 guest 的使用者,指令如下所示:

1
sudo rabbitmqctl add_user guest guest_password  
  1. 添加到管理員組:rabbitmqctl set_user_tags guest administrator

權限與分組

RabbitMQ 的權限分組與其使用者角色相關。RabbitMQ 有四個預設的使用者角色:administratormonitoringpolicymakermanagement。每個角色可以分配不同的訪問權限。

這四個角色的具體意義如下:

  • administrator:具有所有操作權限,包括管理使用者、虛擬主機、策略、連接器等。
  • monitoring:僅允許查看 RabbitMQ 的狀態和統計資訊。
  • policymaker:具有定義和管理策略的權限,但無法更改使用者、虛擬主機或插件設置。
  • management:具有在管理界面上查看和管理 RabbitMQ 和其物件的權限。

此外,您還可以通過自訂角色來創建自訂權限組。要創建自訂角色,請運行以下指令:

  1. sudo rabbitmqctl add_vhost <virtual_host>
  2. sudo rabbitmqctl add_user <username> <password>
  3. sudo rabbitmqctl set_permissions -p <virtual_host> <username> ".*" ".*" ".*"
  4. sudo rabbitmqctl set_user_tags <username> <tag_list>

其中 <tag_list> 是以逗號分隔的標籤列表,每個標籤代表一個角色。例如,若要為名為 myuser 的使用者創建一個自訂角色,指令如下所示:

  1. sudo rabbitmqctl add_vhost /myvhost
  2. sudo rabbitmqctl add_user myuser mypassword
  3. sudo rabbitmqctl set_permissions -p /myvhost myuser ".*" ".*" ".*"
  4. sudo rabbitmqctl set_user_tags myuser mytag

接著,可以透過在 RabbitMQ 管理界面或定義 JSON 配置檔案中添加自訂權限來為新角色分配訪問權限。

需要注意的是,完全授權所有權限可能存在安全風險,因此建議根據實際需求進行適當的限制。

Licensed under CC BY-NC-SA 4.0
使用 Hugo 建立
主題 StackJimmy 設計