【问题标题】:Expiration time of AWS EC2 instance profile credentialsAWS EC2 实例配置文件凭证的到期时间
【发布时间】:2018-12-31 01:47:39
【问题描述】:

AWS 官方文档指出实例配置文件凭据 "are temporary and would eventually expire",我想知道它们多久过期一次。

我之所以问,是因为我的应用程序使用 InstanceProfileCredentialsProvider 作为凭据提供程序,默认情况下不会刷新凭据,运行数天都没有问题。

【问题讨论】:

  • 在您引用的页面上,"当您使用这种方法时...虽然这些凭据是临时的并且最终会过期,但InstanceProfileCredentialsProvider 会定期为您刷新它们,以便获得的凭据继续允许访问 AWS。” 这意味着它确实刷新它们。
  • curl http://169.254.169.254/latest/meta-data/iam/security-credentials/role_name(其中role_name 是实例角色的实际名称)将显示实例当前临时凭证集(以及实际凭证)的到期时间。它永远不会超过几个小时,但我不确定最大寿命是否有正式记录。 169.254.169.254 是一个special internal address,为每个实例提供不同的响应。它由管理程序处理。
  • @Michael-sqlbot 感谢您的第二条评论,我认为这应该是答案。关于您的第一条评论,它实际上取决于提供程序是使用默认的无参数构造函数还是使用 getInstance() 方法创建的,它不会刷新它们。
  • @Michael-sqlbot 我检查了代码,我之前关于刷新的评论是错误的:当你调用 getCredentials() 时,它实际上开始刷新凭据。

标签: amazon-web-services amazon-ec2 amazon-iam


【解决方案1】:

我们从日志记录中注意到,针对附加角色颁发的临时凭证持续了大约 6 小时。

有谁知道它们如何刷新的机制,据说是在它们过期前 15 分钟? SSM 服务是否监控到期并要求新的凭据?

我们目前正在追查似乎是 EC2 实例在夜间没有活动后没有刷新凭证的问题。尝试确定应用程序池空闲超时或回收间隔是否在发挥作用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-04
    • 2016-12-07
    • 2017-02-11
    • 2017-10-03
    • 2016-10-01
    • 1970-01-01
    相关资源
    最近更新 更多