首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >使用从AssumeRoleWithSAML收到的现有令牌刷新AWS STS令牌

使用从AssumeRoleWithSAML收到的现有令牌刷新AWS STS令牌
EN

Stack Overflow用户
提问于 2018-03-16 16:59:38
回答 2查看 4.2K关注 0票数 3

我有一个用例,其中我需要为每个经过身份验证的用户提供临时AWS STS令牌(使用公司IDP进行身份验证)。这些令牌将用于推送亚马逊网络服务S3中的某些数据。通过在IDP响应中使用SAML断言并作为SP (IDP initiated sign-on)与AWS集成,我能够获得此流,类似于此处所示的一个。

https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_saml.html#CreatingSAML-configuring

但由于STS允许令牌有效期最长为1小时,所以我希望在到期前刷新这些令牌,这样我就不必再次提示用户提供凭据(用户体验不佳)。此外,由于这些是公司登录凭据,我无法将它们存储在应用程序中。

我正在查看AWS IAM信任策略,其中一种方法是将'AssumeRole‘条目添加到现有的SAML信任策略中,如下所示(策略中的第二个条目)

代码语言:javascript
复制
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Federated": "arn:aws:iam::xxxxxxxxxxxx:saml-provider/myidp.com"
      },
      "Action": "sts:AssumeRoleWithSAML",
      "Condition": {
        "StringEquals": {
          "SAML:aud": "https://signin.aws.amazon.com/saml"
        }
      }
    },
    {
      "Effect": "Allow",
      "Principal": {
        "AWS": "arn:aws:sts::xxxxxxxxxxxx:assumed-role/testapp/testuser"
      },
      "Action": "sts:AssumeRole"
    }
  ]
}

因此,当测试用户首次使用AssumeRoleWithSAML应用程序接口/命令行界面登录时,他将获得临时凭据。接下来,他可以对这些凭据使用'AssumeRole‘应用程序接口/命令行界面,这样他就可以继续刷新令牌,而不需要IDP凭据。

可以看出,这仅适用于具有"arn:aws:sts::xxxxxxxxxxxx:assumed-role/testapp/testuser“的ARN的STS用户,用于刷新令牌,因为他/她可以承担该角色。但是我需要一种通用的方式,对于任何登录的用户,他都可以生成STS令牌。

一种方法是在主体的信任策略中使用通配符,但看起来不支持。因此,每次令牌过期时,我都会遇到跟踪凭据的问题。有没有办法解决这个问题?

谢谢,罗翰。

EN

回答 2

Stack Overflow用户

发布于 2020-01-08 22:06:28

我已经能够通过在IAM信任策略中指定角色而不是假设角色来使其正常工作。现在,如果我的用户已经承担了testapp角色,那么他们可以无限期地刷新他们的令牌。

代码语言:javascript
复制
"Principal": {
  "AWS": "arn:aws:sts::xxxxxxxxxxxx:role/testapp"
},
票数 2
EN

Stack Overflow用户

发布于 2018-06-09 03:04:08

AWS STS支持AssumeRole* API的更长角色会话(最长12小时)。这是在3/28/18发布的,这是亚马逊网络服务的最新链接:https://aws.amazon.com/about-aws/whats-new/2018/03/longer-role-sessions/。这样你就不需要刷新了,因为我假设一个典型的工作日是< 12小时:-)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49316650

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档