Etcd安全配置之Basic Auth認證

認證說明

  1. Etcd v2以上的版本才支持權限認證,且僅支持Basic Authnginx

  2. Etcd經過用戶(user)-角色(role)-權限的方式來控制訪問,用戶關聯角色,角色擁有權限,從而用戶也就擁有了相應的權限安全

  3. Etcd默認沒有啓用認證機制,只要能鏈接etcd服務就擁有全部的權限,仍是很是危險的,另外一種安全的訪問方式是開啓ssl,只有使用受信任的證書才能訪問數據spa

  4. Etcd開啓Basic Auth以後,默認會啓用兩個角色root和guest,root角色擁有全部權限,guest擁有隻讀權限,這兩個角色都不要刪除,不然你可能會遇到意想不到的Bug設計

  5. Etcd的權限分爲只讀、只寫、可讀寫,能夠對etcd的詳細key進行受權,例如:/conf/project/dev/nginx.conf,也能夠受權key前綴(目錄),例如:/conf/project/,受權規則應以最小知足需求爲準則ssl

權限設計

權限設計應先考慮咱們對權限的需求,從需求出發設計權限配置

  • 需求權限

  1. 爲了方便後續管理,規定配置中心全部key都應已/conf/開頭數據

  2. 須要兩個帳號,一個帳號用在Kerrigan(WebUI)擁有讀取、寫入、修改、刪除key的權限,一個帳號用在confd,只有只讀的權限,可以讀取配置就能夠了證書

 

  • 設計auth

  1. 需求很簡單,咱們須要創建兩個帳號,分別對應兩個角色,兩個角色都是對/conf/開頭的Key進行控制,一個讀寫權限,一個只讀權限

  2. 定義只讀帳號名爲readx,只讀角色名爲readConf,定義讀寫權限帳號名爲authz,讀寫權限爲rootConf,可操做的key都爲/conf/開頭

相關文章
相關標籤/搜索