使用持有者令牌 - AWS Identity and Access Management
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

使用持有者令牌

某些 AWS 服务需要您有权获取 AWS STS 服务持有者令牌,然后您才能以编程方式访问它们的资源。这些服务支持一种协议,该协议要求您使用持有者令牌,而不是使用传统的签名版本 4 签名请求。当您执行需要持有者令牌的 AWS CLI 或 AWS API 操作时,AWS 服务将代表您请求持有者令牌。该服务将为您提供令牌,然后您可以使用该令牌在该服务中执行后续操作。

AWS STS 服务持有者令牌包括来自您的原始委托人身份验证的信息,这些信息可能会影响您的权限。这些信息可以包括委托人标签、会话标签和会话策略。令牌的访问密钥 ID 以 ABIA 前缀开头。这可帮助您在 CloudTrail 日志中识别使用服务持有者令牌执行的操作。

重要

持有者令牌只能用于对生成它的服务的调用以及生成它的区域。您不能使用持有者令牌在其他服务或区域中执行操作。

支持持有者令牌的服务示例是 AWS CodeArtifact。在使用 NPM、Maven 或 PIP 等程序包管理器与 AWS CodeArtifact 进行交互之前,您必须调用 aws codeartifact get-authorization-token 操作。此操作返回可用于执行 AWS CodeArtifact 操作的持有者令牌。或者,您可以使用 aws codeartifact login 命令完成相同的操作,然后自动配置您的客户端。

如果您在为您生成持有者令牌的 AWS 服务中执行操作,则您的 IAM 策略中必须具有以下权限:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowServiceBearerToken", "Effect": "Allow", "Action": "sts:GetServiceBearerToken", "Resource": "arn:aws:iam::111122223333:user/TestUser1" } ] }