Kubernetes[RBAC]:具有特定POD访问权限的用户

Kubernetes[RBAC]:具有特定POD访问权限的用户,kubernetes,rbac,kubernetes-security,kubernetes-pod,Kubernetes,Rbac,Kubernetes Security,Kubernetes Pod,我需要向外部支持提供对命名空间中的一组pod的访问。 我一直在阅读有关RBAC API、[Cluster]角色和[Cluster]角色绑定的内容;但我找不到任何关于如何将角色应用于一组pod(基于注释或标签)的信息。 有人知道这是否可能吗 这是我现在使用的角色,需要将其限制为特定的播客集: kind: Role apiVersion: rbac.authorization.k8s.io/v1 metadata: name: <ClientX>-PodMonitor names

我需要向外部支持提供对命名空间中的一组pod的访问。 我一直在阅读有关RBAC API、[Cluster]角色和[Cluster]角色绑定的内容;但我找不到任何关于如何将角色应用于一组pod(基于注释或标签)的信息。 有人知道这是否可能吗

这是我现在使用的角色,需要将其限制为特定的播客集:

kind: Role
apiVersion: rbac.authorization.k8s.io/v1
metadata:
  name: <ClientX>-PodMonitor
  namespace: <namespace>
rules:
- apiGroups: [""]
  verbs: ["get", "list"]
  resources: ["pods", "pods/log"]
种类:角色
apiVersion:rbac.authorization.k8s.io/v1
元数据:
名称:-播客监视器
名称空间:
规则:
-apiGroups:[“”]
动词:[“获取”、“列表”]
资源:[“pods”,“pods/log”]
如果你们需要更多的细节,请告诉我


谢谢。

请尝试以下使用资源名称定义角色绑定的方法,例如:


我不认为这完全解决了@mvazquez的问题,因为它没有提到“基于注释或标签”部分。我希望一个完整的答案包括一个自定义控制器,它可以监视pod并编辑
角色
,以使
资源名
与带注释或标签的PodsThanks保持同步,并向你们两人发送注释。我已经评估了“resourceName”选项;我解释得不对,这是我的错。”“resourceName”是一个很好的选项,但是,例如,在我的例子中,不能使用它,因为我定义的角色需要动词“list”。我将用这个例子来编辑我的问题,使之更加具体。是的,我不认为有一种开箱即用的方法。您必须搜索或创建一个控制器,该控制器符合@MatthewLDaniel在上述评论中的建议。“访问pods”是什么意思?查看日志、执行日志、查看列表的功能,连接到Pods中运行的服务的功能,…?最初,您只能查看他们的日志,但也可以获取Pods列表(仅限拥有权限的用户)
kind: Role
apiVersion: rbac.authorization.k8s.io/v1
metadata:
    namespace: default
    name: configmap-updater
rules:
- apiGroups: [""]
  resources: ["configmaps"]
  resourceNames: ["my-configmap"]
  verbs: ["update", "get"]