【发布时间】:2019-10-19 23:48:57
【问题描述】:
在我客户的 AWS 账户上,每次我们登录到他们的 AWS 沙盒账户时都会生成安全凭证。此凭证文件是通过 Chrome 插件(SAML 到 AWS STS 密钥转换)自动生成和下载的。
然后,我们必须将生成的内容放到同一 AWS 账户中 EC2 实例内的 ./aws/credentials 文件中。这有点不方便,因为我们每次启动 Terraform 脚本时都必须将生成的凭证和 session_token 更新到 EC2 实例内的凭证文件中。
有什么方法可以附加任何角色,这样我们就可以只使用 EC2 实例,而无需在凭证文件中输入凭证。 请提出建议。
【问题讨论】:
-
“使用 EC2 实例”到底是什么意思?
-
嗨@DusanBajic,我在同一个客户端沙箱环境中有一个EC2实例,我们从AWS仪表板使用控制台“连接”模式登录,它提供了对EC2控制台的Web访问。我已经从这个 EC2 实例运行了 Terraform 脚本,但是由于每次登录 AWS 控制台时安全密钥都会更改,因此我们必须将其输入到凭证文件中才能使用 Terraform。希望现在清楚了。
-
我明白了,但您在标题中回答了您的问题,aws.amazon.com/premiumsupport/knowledge-center/…(另请查看“相关信息”文章)
-
我实际上对此感到困惑。什么角色应该让 EC2 实例能够运行 terraform 命令,而无需我将凭证放入凭证文件中。
-
您创建一个角色并为该角色分配权限(权限应取决于您尝试将哪些 AWS 资源与 terraform 一起使用)。当您将该角色分配给实例时,terraform(或从该实例运行的任何其他角色感知应用程序)可以利用这些权限,而无需任何其他凭据。 terraform.io/docs/providers/aws/index.html#ec2-role
标签: amazon-web-services amazon-ec2 terraform amazon-iam amazon-ecs