【问题标题】:Does'nt configMap referencing in POD requires ServiceAccount?POD 中的 configMap 引用是否需要 ServiceAccount?
【发布时间】:2021-04-28 20:38:25
【问题描述】:

想知道如何在没有适当的 serviceAccount 和关联的 RBAC 规则的情况下在 POD 中引用 configMaps 吗?

示例 POD Yaml 安装 configMap

    - mountPath: /kubernetes-vault
      name: kubernetes-vault

       .................
       .................

          volumes:
      - emptyDir: {}
        name: vault-token
      - configMap:
          defaultMode: 420
          name: kubernetes-vault
    name: kubernetes-vault

associated ServiceAccount and it's corresponding RBAC ( Role and RoleBinding ) 没有任何规则指定此configMap (kubernetes-vault) 的访问规则

POD 的角色和规则

rules:
- apiGroups:
  - '*'
  resources:
  - services
  - pods
  - endpoints
  verbs:
  - get
  - list
  - watch

几个问题

  • 对 configMap 的访问是否需要适当的 ServiceAccount 以及专门为 configMap 访问指定的访问规则?
  • 如果是,上面提到的哪个规则管理 configMap 访问
  • 如果不是,RBAC 规则管理哪些对象?

【问题讨论】:

    标签: kubernetes rbac configmap


    【解决方案1】:

    访问 configMap 是否需要适当的 ServiceAccount 以及专门为 configMap 访问指定的访问规则?

    ServiceAccount 执行该操作时,它会执行该操作,是的,但volumes:kube-apiserverkube-controller 和与 apiserver 交互的调用凭据混合执行。当 Pod 的卷挂载时,所有这些安全检查都已完成——可以通过运行任何 Pod 并禁止其 ServiceAccount 来验证该行为,并观察卷挂载仍然发生

    如果一个对象只能由有限的一组用户访问,则应该在角色级别进行,以防止用户调度接触敏感项目的 Pod。

    如果不是,RBAC 规则管理哪些对象?

    据我所知,一切都受 RBAC 规则约束,即使您不满意,系统也会提供Validating Admission Controllers,它允许非常细粒度的访问规则

    【讨论】:

    • 感谢@mdaniel,我对 RBAC 规则是否管理 configMap 访问特别感兴趣,已使用当前有效的规则更新了问题,请提供建议。
    猜你喜欢
    • 2021-12-07
    • 1970-01-01
    • 1970-01-01
    • 2018-03-13
    • 1970-01-01
    • 1970-01-01
    • 2020-11-19
    • 2021-01-08
    相关资源
    最近更新 更多