本文介绍如何通过自行编写 Kubernetes 的 ClusterRole 和 Role 以授予子账号特定权限,您可根据业务诉求进行对应操作。
策略语法说明
您可自行编写策略语法,或通过访问管理 CAM 策略生成器创建自定义策略。YAML 示例如下:
Role:命名空间维度
apiVersion: rbac.authorization.k8s.io/v1kind: Rolemetadata:name: test-rolenamespace: defaultrules:- apiGroups:- ""resources:- podsverbs:- create- delete- deletecollection- get- list- patch- update- watch
ClusterRole:集群维度
apiVersion: rbac.authorization.k8s.io/v1kind: ClusterRolemetadata:name: test-clusterrolerules:- apiGroups:- ""resources:- podsverbs:- create- delete- deletecollection- get- list- patch- update- watch
操作步骤
说明
该步骤以子账号绑定自定义 ClusterRole 为例,与绑定 Role 的步骤基本一致,您可结合实际需求进行操作。
1. 登录容器服务控制台,选择左侧导航栏中的 集群。
2. 在集群列表中,单击目标集群 ID,进入集群详情页。
3. 选择左侧菜单栏中的授权管理 > ClusterRole。如下图所示:
4. 在 ClusterRole 页面,单击右上角的 YAML 创建资源。
5. 在编辑界面输入自定义策略的 YAML 内容,单击完成即可创建 ClusterRole。
该步骤以 ClusterRole:集群维度 YAML 为例,创建完成后,可在 ClusterRole 页面中查看自定义权限 “test-clusterrole”。
6. 在 ClusterRoleBinding 页面,单击 RBAC 策略生成器。
7. 在新建 ClusterRoleBinding 页面勾选需授权的子账号并单击下一步。
8. 进入集群 RBAC 页面,按照以下指引进行权限设置。如下图所示:
Namespace 列表:按需指定权限生效的 Namespace 范围。
权限:选择“自定义”,并单击选择自定义权限。按需在自定义权限列表中进行权限选择,本文以选择已创建的自定义权限 “test-clusterrole” 为例。
说明
您还可以单击添加权限,继续进行权限自定义设置。
9. 单击完成即可完成授权操作。
参考资料