云容器引擎 CCE-权限管理:命名空间权限(kubernetes RBAC授权)

时间:2023-12-26 21:29:29

命名空间权限(kubernetes RBAC授权)

命名空间权限是基于Kubernetes RBAC能力的授权,通过权限设置可以让不同的用户或用户组拥有操作不同Kubernetes资源的权限。Kubernetes RBAC API定义了四种类型:Role、ClusterRole、RoleBinding与ClusterRoleBinding,这四种类型之间的关系和简要说明如下:

  • Role:角色,其实是定义一组对Kubernetes资源(命名空间级别)的访问规则。
  • RoleBinding:角色绑定,定义了用户和角色的关系。
  • ClusterRole:集群角色,其实是定义一组对Kubernetes资源(集群级别,包含全部命名空间)的访问规则。
  • ClusterRoleBinding:集群角色绑定,定义了用户和集群角色的关系。

Role和ClusterRole指定了可以对哪些资源做哪些动作,RoleBinding和ClusterRoleBinding将角色绑定到特定的用户、用户组或ServiceAccount上。如下图所示。

图1 角色绑定
在CCE控制台可以授予用户或用户组命名空间权限,可以对某一个命名空间或全部命名空间授权,CCE控制台默认提供如下ClusterRole。
  • view(只读权限):对全部或所选命名空间下大多数资源的只读权限。
  • edit(开发权限):对全部或所选命名空间下多数资源的读写权限。当配置在全部命名空间时能力与运维权限一致。
  • admin(运维权限):对全部命名空间下大多数资源的读写权限,对节点、存储卷,命名空间和配额管理的只读权限。
  • cluster-admin(管理员权限):对全部命名空间下所有资源的读写权限。
  • drainage-editor:节点排水操作权限,可执行节点排水。
  • drainage-viewer:节点排水只读权限,仅可查看节点排水状态,无法执行节点排水。
support.huaweicloud.com/productdesc-cce/cce_productdesc_0002.html