gpt4 book ai didi

库伯内斯 RBAC : How to allow exec only to a specific Pod created by Deployment

转载 作者:行者123 更新时间:2023-12-02 11:54:13 25 4
gpt4 key购买 nike

我有一个包含 30 个服务的应用程序命名空间。大多数是无状态部署,混合了一些 StatefulSets 等。相当标准的东西。

我需要授予特殊用户一个只能执行到特定 Pod 的角色。目前 RBAC 授予命名空间中所有 pod 的执行权限,但我需要收紧它。

问题是 Pod(s) 是由 Deployment configurator 创建的,因此 Pod 名称是“生成的”,configurator-xxxxx-yyyyyy。由于您不能使用 glob(即 configurator-*),并且 Role 不能直接为 Deployments 授予 exec。

到目前为止我想到的是:

  • 将 Deployment 转换为 StatefulSet 或普通 Pod,因此 Pod 将具有已知的非生成名称,并且不需要 glob
  • 将 Deployment 移动到单独的命名空间中,因此全局执行权限不是问题

这两种方法都有效,但都不是最佳的。有没有办法为此编写适当的角色?

最佳答案

RBAC,就像现在的意思一样,不允许通过 namespace 和资源名称以外的其他属性来过滤资源。讨论开启here .

因此,命名空间是授权访问 pod 的最小部分。服务必须在命名空间中分开,考虑用户可能需要访问它们的内容。

目前最佳解决方案是将此部署移动到另一个命名空间,因为它需要与原始命名空间中的其他部署不同的访问规则。

关于库伯内斯 RBAC : How to allow exec only to a specific Pod created by Deployment,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52943102/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com