CCE集群權限是基于IAM系統策略和自定義策略的授權,可以通過用戶組功能實現IAM用戶的授權。
注意集群權限僅針對與集群相關的資源(如集群、節點等)有效,您必須確保同時配置了命名空間權限,才能有操作Kubernetes資源(如工作負載、Service等)的權限。
前提條件
- 給用戶組授權之前,請您了解用戶組可以添加的CCE系統策略,并結合實際需求進行選擇,CCE支持的系統策略及策略間的對比。
- 擁有Security Administrator(IAM除切換角色外所有權限)權限的用戶(如賬號默認擁有此權限),才能看見CCE控制臺權限管理頁面當前用戶組及用戶組所擁有的權限。
配置說明
CCE控制臺“權限管理 > 集群權限”頁面中創建用戶組和具體權限設置均是跳轉到IAM控制臺進行具體操作,設置完后在集群權限頁面能看到用戶組所擁有的權限。本章節描述操作直接以IAM中操作為主,不重復介紹在CCE控制臺如何跳轉。
示例流程
圖 給用戶授予CCE權限流程

- 創建用戶組并授權。
在IAM控制臺創建用戶組,并授予CCE權限,例如CCEReadOnlyAccess。
說明CCE服務按區域部署,在IAM控制臺授予CCE權限時請選擇“區域級項目”。
- 創建用戶并加入用戶組。
在IAM控制臺創建用戶,并將其加入1中創建的用戶組。
- 用戶登錄并驗證權限。
新創建的用戶登錄控制臺,切換至授權區域,驗證權限:
在“服務列表”中選擇云容器引擎,進入CCE主界面嘗試購買集群,如果無法無法成功操作(假設當前權限僅包含CCEReadOnlyAccess),表示“CCEReadOnlyAccess”已生效。
在“服務列表”中選擇除云容器引擎外(假設當前策略僅包含CCEReadOnlyAccess)的任一服務,若提示權限不足,表示“CCEReadOnlyAccess”已生效。
系統角色
角色是IAM最初提供的一種根據用戶的工作職能定義權限的粗粒度授權機制。該機制以服務為粒度,提供有限的服務相關角色用于授權。角色并不能滿足用戶對精細化授權的要求,無法完全達到企業對權限最小化的安全管控要求。
IAM中預置的CCE系統角色為 CCEAdministrator ,給用戶組授予該系統角色權限時,必須同時勾選該角色依賴的其他策略才會生效,例如Tenant Guest、Server Administrator、ELB Administrator、OBS Administrator、SFS Administrator、SWR Admin、APM FullAccess。
系統策略
IAM中預置的CCE系統策略當前包含CCEFullAccess和CCEReadOnlyAccess兩種策略:
- CCE FullAccess :系統策略,CCE服務集群相關資源的普通操作權限,不包括集群(啟用Kubernetes RBAC鑒權)的命名空間權限,不包括委托授權、生成集群證書等管理員角色的特權操作。
- CCE ReadOnlyAccess: 系統策略,CCE服務集群相關資源的只讀權限,不包括集群(啟用Kubernetes RBAC鑒權)的命名空間權限。
表 CCE FullAccess策略主要權限
操作(Action)
Action詳情
說明
cce:*:*
cce:cluster:create
創建集群
cce:cluster:delete
刪除集群
cce:cluster:update
更新集群,如后續允許集群支持RBAC,調度參數更新等
cce:cluster:upgrade
升級集群
cce:cluster:start
喚醒集群
cce:cluster:stop
休眠集群
cce:cluster:list
查詢集群列表
cce:cluster:get
查詢集群詳情
cce:node:create
添加節點
cce:node:delete
刪除節點/批量刪除節點
cce:node:update
更新節點,如更新節點名稱
cce:node:get
查詢節點詳情
cce:node:list
查詢節點列表
cce:nodepool:create
創建節點池
cce:nodepool:delete
刪除節點池
cce:nodepool:update
更新節點池信息
cce:nodepool:get
獲取節點池
cce:nodepool:list
列出集群的所有節點池
cce:release:create
創建模板實例
cce:release:delete
刪除模板實例
cce:release:update
更新升級模板實例
cce:job:list
查詢任務列表(集群層面的job)
cce:job:delete
刪除任務/批量刪除任務(集群層面的job)
cce:job:get
查詢任務詳情(集群層面的job)
cce:storage:create
創建存儲
cce:storage:delete
刪除存儲
cce:storage:list
列出所有磁盤
cce:addonInstance:create
創建插件實例
cce:addonInstance:delete
刪除插件實例
cce:addonInstance:update
更新升級插件實例
cce:addonInstance:get
獲取插件實例
cce:addonTemplate:get
獲取插件模板
cce:addonInstance:list
列出所有插件實例
cce:addonTemplate:list
列出所有插件模板
cce:chart:list
列出所有模板
cce:chart:delete
刪除摸板
cce:chart:update
更新模板
cce:chart:upload
上傳模板
cce:chart:get
獲取模板信息
cce:release:get
獲取模板實例信息
cce:release:list
列出所有模板實例
cce:userAuthorization:get
獲取CCE用戶授權
cce:userAuthorization:create
創建CCE用戶授權
ecs:*:*
-
ECS(彈性云主機)服務的所有權限。
evs:*:*
-
EVS(云硬盤)的所有權限。
可以將云硬盤掛載到云主機,并可以隨時擴容云硬盤容量
vpc:*:*
-
VPC(虛擬私有云,包含二代ELB)的所有權限。
創建的集群需要運行在虛擬私有云中,創建命名空間時,需要創建或關聯VPC,創建在命名空間的容器都運行在VPC之內。
sfs:*:get*
-
SFS(彈性文件存儲服務)資源詳情的查看權限。
sfs:shares:ShareAction
-
SFS(彈性文件存儲服務)資源的擴容共享。
aom:*:get
-
AOM(應用運維管理)資源詳情的查看權限。
aom:*:list
-
AOM(應用運維管理)資源列表的查看權限。
aom:autoScalingRule:*
-
AOM(應用運維管理)自動擴縮容規則的所有操作權限。
apm:icmgr:*
-
APM(應用性能管理服務)操作ICAgent權限。
lts:*:*
-
LTS(云日志服務)的所有權限。
表 CCE ReadOnlyAccess策略主要權限
操作(Action)
操作(Action)
說明
cce:*:get
cce:cluster:get
查詢集群詳情
cce:node:get
查詢節點詳情
cce:job:get
查詢任務詳情(集群層面的job)
cce:addonInstance:get
獲取插件實例
cce:addonTemplate:get
獲取插件模板
cce:chart:get
獲取模板信息
cce:nodepool:get
獲取節點池
cce:release:get
獲取模板實例信息
cce:userAuthorization:get
獲取CCE用戶授權
cce:*:list
cce:cluster:list
查詢集群列表
cce:node:list
查詢節點列表
cce:job:list
查詢任務列表(集群層面的job)
cce:addonInstance:list
列出所有插件實例
cce:addonTemplate:list
列出所有插件模板
cce:chart:list
列出所有模板
cce:nodepool:list
列出集群的所有節點池
cce:release:list
列出所有模板實例
cce:storage:list
列出所有磁盤
cce:kubernetes:*
-
操作所有kubernetes資源。
ecs:*:get
-
ECS(彈性云主機)所有資源詳情的查看權限。
CCE中的一個節點就是具有多個云硬盤的一臺彈性云主機
ecs:*:list
-
ECS(彈性云主機)所有資源列表的查看權限。
bms:*:get*
-
BMS(物理機)所有資源詳情的查看權限。
bms:*:list
-
BMS(物理機)所有資源列表的查看權限。
evs:*:get
-
EVS(云硬盤)所有資源詳情的查看權限。可以將云硬盤掛載到云主機,并可以隨時擴容云硬盤容量
evs:*:list
-
EVS(云硬盤)所有資源列表的查看權限。
evs:*:count
-
-
vpc:*:get
-
VPC(虛擬私有云,包含二代ELB)所有資源詳情的查看權限。
創建的集群需要運行在虛擬私有云中,創建命名空間時,需要創建或關聯VPC,創建在命名空間的容器都運行在VPC之內
vpc:*:list
-
VPC(虛擬私有云,包含二代ELB)所有資源列表的查看權限。
sfs:*:get*
-
SFS(彈性文件服務)服務所有資源詳情的查看權限。
sfs:shares:ShareAction
-
SFS(彈性文件服務)資源的擴容共享。
aom:*:get
-
AOM(應用運維管理)服務所有資源詳情的查看權限。
aom:*:list
-
AOM(應用運維管理)服務所有資源列表的查看權限。
aom:autoScalingRule:*
-
AOM(應用運維管理)服務自動擴縮容規則的所有操作權限。
lts:*:get
-
LTS(云日志服務)的所有資源詳情的查看權限。
lts:*:list
-
LTS(云日志服務)的所有資源列表的查看權限。
CCE集群權限與企業項目
CCE支持以集群為粒度,基于企業項目維度進行資源管理以及權限分配。
如下事項需特別注意:
- IAM項目是基于資源的物理隔離進行管理,而企業項目則是提供資源的全局邏輯分組,更符合企業實際場景,并且支持基于企業項目維度的IAM策略管理,因此推薦您使用企業項目。
- IAM項目與企業項目共存時,IAM將優先匹配IAM項目策略、未決則匹配企業項目策略。
- CCE集群基于已有基礎資源(VPC)創建集群、節點時,請確保IAM用戶在已有資源的企業項目下有相關權限,否則可能導致集群或者節點創建失敗。
CCE集群權限與IAM RBAC
CCE兼容IAM傳統的系統角色進行權限管理,建議您切換使用IAM的細粒度策略,避免設置過于復雜或不必要的權限管理場景。
CCE當前支持的角色如下:
- IAM的基礎角色:
- te_admin(Tenant Administrator):可以調用除IAM外所有服務的所有API。
- readonly(Tenant Guest):可以調用除IAM外所有服務的只讀權限的API。
- CCE的自定義管理員角色:CCE Administrator。
說明
?Tenant Administrator、Tenant Guest是特殊的IAM系統角色,當配置任意系統或自定義策略后,Tenant Administrator、Tenant Guest將以系統策略形式生效,用于兼容IAM RBAC和ABAC場景。
如果用戶有Tenant Administrator或者CCE Administrator的系統角色,則此用戶擁有Kubernetes RBAC的cluster-admin權限,在集群創建后不可移除。
如果用戶為集群創建者,則默認被授權Kubernetes RBAC的cluster-admin權限,此項權限可以在集群創建后被手動移除:
- 方式1:權限管理 - 命名空間權限 - 移除cluster-creator。
- 方式2:通過API或者kubectl刪除資源,ClusterRoleBinding:cluster-creator。
RBAC與IAM策略共存時,CCE開放API或Console操作的后端鑒權邏輯如下:

注意CCE部分接口由于涉及命名空間權限或關鍵操作,需要特殊權限:clusterCert獲取集群k8s kubeconfig: cceadm/teadmin