AWS 访问令牌和 SSO 用户的密钥在 ECS 部署中 8 小时后过期

问题描述 投票:0回答:1

我已将我的nodeJs应用程序部署到ECS,但它使用其他资源,例如SNS和SES。但是,要使用 SES,我必须将 AWS_ACCESS_KEY_ID、AWS_SECRET_ACCESS_KEY 和 AWS_SESSION_TOKEN 存储在 env 中。所以,此时一切都工作正常,但由于 SSO,密钥每 8 小时就会过期,所以我无法弄清楚如何以编程方式在我的代码中获取这些令牌并更新 env

注意:通过 SSO 登录后,我承担一个角色并使用这些密钥,这些密钥最终会过期。

amazon-web-services amazon-ecs aws-sso aws-credentials
1个回答
0
投票

在大多数需要凭证才能访问其他 AWS 服务的场景中,您应该使用 任务角色。这类似于实例角色,但范围为 ecs 任务。由于该角色将隐式颁发任务临时凭据,因此这些凭据将在 12 小时后失效。但 ECS 会在后台不断更新它们,您的应用程序不会遇到任何问题。

不适合使用任务角色的一种场景是需要生成有效期超过 12 小时的预签名 URL。在这种情况下,您必须使用永久的静态/长期 IAM 凭证对 URL 进行预签名,或者按需进行预签名。

© www.soinside.com 2019 - 2024. All rights reserved.