Skip to main content

自定义策略授权

本文介绍如何通过自行编写 Kubernetes 的 ClusterRole 和 Role 以授予子账号特定权限,您可根据业务诉求进行对应操作。

策略语法说明

您可自行编写策略语法,或通过访问管理 CAM 策略生成器创建自定义策略。YAML 示例如下:

Role:命名空间维度

apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
name: testRole
namespace: default
rules:
- apiGroups:
- ""
resources:
- pods
verbs:
- create
- delete
- deletecollection
- get
- list
- patch
- update
- watch

ClusterRole:集群维度

apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
name: testClusterRole
rules:
- apiGroups:
- ""
resources:
- pods
verbs:
- create
- delete
- deletecollection
- get
- list
- patch
- update
- watch

操作步骤

说明:

该步骤以为子账号绑定自定义 ClusterRole 为例,与绑定 Role 的步骤基本一致,您可结合实际需求进行操作。

  1. 登录容器服务控制台,选择左侧导航栏中的【集群】。

  2. 在“集群管理”页面中,选择需要的集群 ID。

  3. 在集群详情页面中,单击【授权管理】 > 【ClusterRole】。

    img

  4. 在 “ClusterRole” 管理页面中,单击右上角的【YAML创建资源】。

  5. 在编辑界面输入自定义策略的 YAML 内容,单击完成即可创建 ClusterRole。

    该步骤以 ClusterRole:集群维度 YAML 为例,创建完成后,可在 “ClusterRole” 管理页面中查看自定义权限 “testClusterRole”。

  6. 在 “ClusterRoleBinding” 管理页面中,单击【RBAC策略生成器】。

  7. 在“管理权限”页面的“选择账号”步骤中,勾选需授权的子账号并单击下一步。

  8. 进入“集群RBAC设置”界面,按照以下指引进项权限设置。

    • Namespace列表:按需指定权限生效的 Namespace 范围。
    • 权限:选择“自定义”,并单击选择自定义权限。按需在自定义权限列表中进行权限选择,本文以选择已创建的自定义权限 “testClusterRole” 为例。

    说明:

    您还可以单击【添加权限】,继续进行权限自定义设置。

  9. 单击完成即可完成授权操作。