ZBLOG

创建一个service account 授权访问 kind CustomResourceDefinition

要为 ServiceAccount 授权访问 Kind CustomResourceDefinition,您可以使用 Kubernetes RBAC(基于角色的访问控制)来创建一个 ClusterRole,然后将其绑定到您的 ServiceAccount 上。

下面是一个示例 YAML 文件,演示如何为名称为 my-serviceaccount 的 ServiceAccount 分配对自定义资源定义 my-crd.example.com 的访问权限:

kind: ClusterRole
apiVersion: rbac.authorization.k8s.io/v1beta1
metadata:
  name: my-clusterrole
rules:
- apiGroups:
  - apiextensions.k8s.io
  resources:
  - customresourcedefinitions
  resourceNames:
  - my-crd.example.com # 指定 CRD 名称,这里是 "my-crd.example.com"
  verbs:
  - get
  - list
  - watch

---
kind: RoleBinding
apiVersion: rbac.authorization.k8s.io/v1beta1
metadata:
  name: my-rolebinding
subjects:
- kind: ServiceAccount # 指定类型为 ServiceAccount 
  name: my-serviceaccount # 指定要授权的 ServiceAccount 名称 
roleRef:
  kind: ClusterRole # 指定所引用的角色类型为 ClusterRole 
  name: my-clusterrole # 指定所引用的角色名称为 "my-clusterrole" 

解释一下上述 YAML 文件中各部分含义:

  • ClusterRole: 定义了具有特定规则集(在本例中是对 CRD 的访问权限)的角色。
  • RoleBinding: 将指定 ServiceAccount 绑定到 ClusterRole,从而授予该 ServiceAccount 与该角色关联的权限。

要应用这些配置,请使用以下命令:

kubectl apply -f <yaml-file>

在此之后,您的 ServiceAccount my-serviceaccount 将具有对名为 my-crd.example.com 的自定义资源定义的访问权限。

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://golang.0voice.com/?id=4411

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?