用户指南

自定义策略授权

最近更新时间:2020-07-09 11:53:13

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

策略语法说明

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

Role:命名空间维度

apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
  name: testRole
  namespaces: 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. 单击【完成】即可完成授权操作。

参考资料

如需了解更多信息,可参考 Kubernetes 官方文档 :使用RBAC授权

目录