帮助改进此页面
想为本用户指南做出贡献? 滚动到页面底部,然后选择在 GitHub 上编辑此页面。您的贡献有助于我们的用户指南为每个人提供更充分的参考。
使用支持的 AWS 开发工具包
在使用服务账户的 IAM 角色时,Pods 中的容器必须使用支持通过 OpenID Connect Web 身份令牌文件分派 IAM 角色的 AWS 开发工具包版本。请确保为您的 AWS 开发工具包使用以下版本或更高版本:
许多流行的 Kubernetes 附加组件,如 Cluster Autoscaler
为了确保您使用的是受支持的开发工具包,请在构建容器时按照用于在 AWS 上进行构建的工具
使用凭证
要使用服务账户的 IAM 角色凭证,您的代码可以使用任何 AWS SDK 为具有 SDK 的 AWS 服务创建客户端,默认情况下,SDK 会在一系列位置中搜索要使用的 AWS Identity and Access Management 凭证。如果您在创建客户端或者初始化 SDK 时未指定凭证提供程序,则将使用服务账户凭证的 IAM 角色
由于服务账户的 IAM 角色已添加为默认凭证链中的一个步骤,因此该操作可行。如果您的工作负载当前使用凭证链中较早的证书,则即使您为同一工作负载的服务账户配置了 IAM 角色,这些凭证也将继续使用。
SDK 使用 AssumeRoleWithWebIdentity
操作自动将服务账户 OIDC 令牌交换为 AWS Security Token Service 中的临时凭证。Amazon EKS 和此 SDK 操作会在临时凭证到期前进行续订,从而继续轮换临时凭证。