HashiCorp Consul 啟用 ACL(Access Control List)

在上一篇 HashiCorp Consul 分散式鍵值儲存(Key-Value Store) Linux 安裝示範 安裝完成後,Consul 是沒有任何驗證機制的,不需要登入就可以查看/修改資料,啟用 ACL(Access Control List) 其實就是開啟身份驗證功能和權限管理,本篇就來示範如何啟用 ACL。

編輯 Consul 設定檔:
    
sudo vi /etc/consul.d/consul.hcl
    

在設定檔中加入以下設定值:
    
acl {
  enabled = true
  default_policy = "deny"
  enable_token_persistence = true
}
    

代表的是啟用 ACL ,並且需要登入才能存取設定值。

重新啟動 consul 服務:
    
sudo systemctl restart consul
    

啟用 ACL 後再回到 Consul 網頁就會發現需要登入了:

使用以下指令產生登入 token:
    
consul acl bootstrap
    

範例輸出:
    
consul acl bootstrap
AccessorID:       669942ba-d1f4-bca2-8881-e2cb2a68d62b
SecretID:         b517d1e3-2a49-3b0d-dfe6-1a8f96005ce4
Description:      Bootstrap Token (Global Management)
Local:            false
Create Time:      2025-01-29 07:49:11.254758421 +0000 UTC
Policies:
   00000000-0000-0000-0000-000000000001 - global-management
    

上面的 SecretID 就是最重要的登入 token ,使用此 token 登入後就可以再去網頁介面中新增其他不同層級權限的角色和 token 了。

參考資料:
Access Control List (ACL) overview
Create a service token

留言