EKS文档说
“当您创建Amazon EKS集群时,会在集群的RBAC配置中自动向IAM实体(用户或角色)授予system:master权限”。
但是在创建EKS集群之后,如果检查aws-auth配置映射,则它没有ARN映射到system:masters
组。但是我能够通过kubectl访问集群。因此,如果aws-auth(heptio配置图)没有将我的ARN(我是创建EKS集群的ARN)映射到system:masters
组,那么heptio aws身份验证器如何对我进行身份验证?
答案 0 :(得分:5)
我知道答案了。基本上在heptio服务器端组件上,system:master的静态映射是在/ etc / kubernetes / aws-iam-authenticator /(https://github.com/kubernetes-sigs/aws-iam-authenticator#3-configure-your-api-server-to-talk-to-the-server)下完成的,该映射已安装到heptio身份验证器容器中。由于您无法在EKS中对此进行访问,因此您无法看到它。但是,如果您确实使用预签名的请求调用/ authenticate自己,则应该从heptio身份验证器获得TokenReviewStatus响应,其中显示ARN(创建集群)到system:master组的映射!
答案 1 :(得分:0)
在创建集群时,还要安装aws-iam-authenticator
,
并且自您创建集群以来,我确定您拥有~/.aws/credentials
。
如果您检查aws-auth
文件,则可以看到其中包含aws-iam-authenticator
。
您还拥有~/.kube/config
文件,可以在其中看到iam-authenticator
将AWS-PROFILE
映射为ConfigMap
。
因此,当您运行kubectl command
后,它将读取kube配置文件以对您的集群进行身份验证。