Kubernetes 如何提供对服务帐户的访问以读取多个名称空间中的POD?

Kubernetes 如何提供对服务帐户的访问以读取多个名称空间中的POD?,kubernetes,kubectl,rbac,Kubernetes,Kubectl,Rbac,我要去库伯内特斯的RBAC。在我看来 ServiceAccount可以绑定到命名空间中的角色 (或) ServiceAccount可以绑定到ClusterRole并具有群集范围的访问权限(所有名称空间?) 单个服务帐户(或用户)是否可能不具有群集范围的访问权限,而仅在名称空间的子集中具有只读访问权限?如果是这样,有人能详细说明如何实现这一点吗。谢谢 您需要为ServiceAccount应有权访问的每个命名空间中的每个命名空间创建角色绑定 有一个示例可以为默认ServiceAccount授予读

我要去库伯内特斯的RBAC。在我看来

  • ServiceAccount可以绑定到命名空间中的角色 (或)
  • ServiceAccount可以绑定到ClusterRole并具有群集范围的访问权限(所有名称空间?)

单个服务帐户(或用户)是否可能不具有群集范围的访问权限,而仅在名称空间的子集中具有只读访问权限?如果是这样,有人能详细说明如何实现这一点吗。谢谢

您需要为ServiceAccount应有权访问的每个命名空间中的每个命名空间创建角色绑定

有一个示例可以为默认ServiceAccount授予读取
开发
命名空间中的POD的权限

kind: RoleBinding
apiVersion: rbac.authorization.k8s.io/v1
metadata:
  name: read-secrets
  namespace: development # This only grants permissions within the "development" namespace.
subjects:
- kind: ServiceAccount
  name: default
  namespace: kube-system
roleRef:
  kind: Role
  name: pod-reader 
  apiGroup: rbac.authorization.k8s.io

我认为解决方案是为您希望允许的每个命名空间的一个服务帐户定义多个
RoleBinding