尝试在AWS上设置kube群集时,我们希望能够将IAM角色与某些容器相关联,因此考虑使用允许您这样做的众多工具之一作为kube2iam。所有工具似乎都通过根据部署的注释来代理假设角色,以相同的方式工作。这不允许通过更改注释来扮演其他容器的角色来升级?
来自kube2iam readme:
问题在于,在一个基于多偏见容器的世界中,多个容器将共享基础节点。给定的容器将共享相同的基本节点,通过IAM角色提供对AWS资源的访问将意味着一个人需要创建一个IAM角色,这是所有IAM角色的结合。从安全角度来看,这是不可接受的。
从我的理解中,如果引入恶意豆荚,仍然存在所描述的问题。人们目前如何解决这个问题/这是我应该担心的事情?
您可以通过名称空间限制消耗的角色。
apiVersion: v1
kind: Namespace
metadata:
annotations:
iam.amazonaws.com/allowed-roles: |
["role-arn"]
name: default
使用K8S RBAC启用您的部署不应具有更新命名空间注释的权限。