【发布时间】:2019-03-27 08:10:28
【问题描述】:
我有一个包含 30 个服务的应用程序命名空间。大多数是无状态部署,与一些有状态集等混合在一起。相当标准的东西。
我需要授予特殊用户一个只能在特定 Pod 中执行的角色。目前 RBAC 授予命名空间中所有 pod 的 exec 权限,但我需要收紧它。
问题是 Pod 是由 Deployment configurator 创建的,因此 Pod 名称是“生成的”configurator-xxxxx-yyyyyy。由于您不能使用 glob(即configurator-*),并且 Role 不能直接为 Deployment 授予 exec。
到目前为止,我已经考虑过:
- 将 Deployment 转换为 StatefulSet 或普通 Pod,因此 Pod 将具有已知的非生成名称,并且不需要 glob
- 将 Deployment 移动到单独的命名空间中,因此全局 exec 权限不是问题
这两种方法都有效,但都不是最优的。有没有办法为此编写适当的角色?
【问题讨论】:
标签: kubernetes rbac