本章節通過簡單的命名空間授權方法,將CCE服務的用戶和用戶組授予操作不同命名空間資源的權限,從而使用戶和用戶組在擁有對應的CCE集群標準權限的同時,又可以擁有對集群中命名空間的操作權限。設置流程如示例流程所示。
您需要擁有一個帳號,有一個或若干個用戶組和IAM用戶。
- 本例將對用戶和用戶組授予操作不同命名空間資源的權限,在您的實際業務中,您可根據業務需求僅對用戶或用戶組授予不同的權限。
- 本例僅用于給用戶或用戶組在未授權過的命名空間下新增權限,已授權的用戶或用戶組的權限可以在“權限管理 > 命名空間權限”的列表“操作”欄中單擊“編輯權限”進行修改。
- 當給用戶或用戶組添加多個權限時,多個權限會同時生效(取并集);為用戶組設置的權限將作用于用戶組下的全部用戶。
kubernetes RBAC的授權能力支持1.13及以上版本集群。
在v1.11.7-r2版本的集群中默認開啟RBAC功能,若需使用RBAC功能請將集群升級至v1.11.7-r2或以上版本。升級方法請參見升級集群。
示例流程
命名空間是對一組資源和對象的抽象整合。在同一個集群內可創建不同的命名空間,不同命名空間中的數據彼此隔離,使得它們既可以共享同一個集群的服務,也能夠互不干擾。命名空間的一個重要的作用是充當一個虛擬的集群,用于多種工作用途,滿足多用戶的使用需求。
本章節將沿用創建用戶并授權使用CCE中創建的IAM用戶“James”和用戶組“開發人員組”進行示例,為IAM用戶“James”和用戶組“開發人員組”添加命名空間權限,可以參考如下操作:
本步驟將在CCE控制臺中為IAM用戶“James”以及用戶組“開發人員組”授予某個集群命名空間下資源的操作權限,設置如下:
步驟 1 登錄CCE控制臺,在左側導航欄中選擇“權限管理”,進入權限管理頁面。
步驟 2 單擊“命名空間權限”頁簽,在命名空間權限列表右上方選擇要添加授權的集群,單擊“添加授權”按鈕,進入添加授權頁面。
步驟 3 在添加授權頁面,確認集群名稱,選擇該集群下要授權使用的命名空間,此處選擇“default”。
步驟 4 單擊“添加用戶權限”,為“開發人員組”增加“admin”權限,在展開的選項中進行如下配置:
- 用戶/用戶組:選擇“用戶組”,并在二級選項中選擇“開發人員組”。
- 權限:選擇“admin”。
單擊“添加用戶權限”可繼續增加其他用戶或用戶組,并賦予相應的權限。
步驟 5 單擊下方的“添加命名空間權限”,為用戶“James”增加在另一個命名空間“monitoring”的權限,在展開的選項中進行如下配置:
- 命名空間:選擇“monitoring”。
- 用戶/用戶組:選擇“用戶”,并在二級選項中選擇“James”增加。
- 權限:選擇“view”。
步驟 6 單擊“創建”,完成以上用戶和用戶組在命名空間中的相應權限設置。
說明:
經過以上操作,授權結果如下:
- 由于“開發人員組”包含IAM用戶“James”,因此IAM用戶“James”也同時獲得了在命名空間“default”的“admin”權限。
- 為IAM用戶“James”增加了在命名空間“monitoring”的“view”權限。
使用IAM用戶“James”登錄云容器引擎控制臺,驗證授予的命名空間權限,驗證步驟如下:
步驟 1 在登錄頁面,單擊右下角的“IAM用戶登錄”。
步驟 2 在“IAM用戶登錄”頁面,輸入帳號名、用戶名及用戶密碼,使用新創建的IAM用戶登錄。
- 帳號名為該IAM用戶所屬帳號的名稱。
- 用戶名和密碼為創建IAM用戶James時輸入的用戶名和密碼,首次登錄時需要重置密碼。
如果登錄失敗,您可以聯系您的帳號主體,確認用戶名及密碼是否正確,或是重置用戶名及密碼。
步驟 3 登錄成功后,進入控制臺,請先切換至授權區域。
步驟 4 在“服務列表”中選擇“云容器引擎 CCE”,進入CCE控制臺,對IAM用戶James的命名空間權限進行驗證。