自定义策略授权

最近更新时间: 2024-06-12 15:06:00

本文介绍如何通过自行编写 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】。

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

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

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

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

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

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

    • Namespace列表:按需指定权限生效的 Namespace 范围。

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

      说明:

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

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