文档 AWS SDK 示例 GitHub 存储库中还有更多 S AWS DK 示例
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
将 GetFederationToken
与 CLI 配合使用
以下代码示例演示如何使用 GetFederationToken
。
- CLI
-
- AWS CLI
-
使用 IAM 用户访问密钥凭证返回一组临时的安全凭证
以下
get-federation-token
示例返回用户的一组临时安全凭证(由访问密钥 ID、秘密访问密钥和安全令牌组成)。您必须使用 IAM 用户的长期安全凭证调用GetFederationToken
操作。aws sts get-federation-token \ --name
Bob
\ --policyfile://myfile.json
\ --policy-arnsarn=arn:aws:iam::aws:policy/AmazonS3ReadOnlyAccess
\ --duration-seconds900
myfile.json
的内容:{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "ec2:Describe*", "Resource": "*" }, { "Effect": "Allow", "Action": "elasticloadbalancing:Describe*", "Resource": "*" }, { "Effect": "Allow", "Action": [ "cloudwatch:ListMetrics", "cloudwatch:GetMetricStatistics", "cloudwatch:Describe*" ], "Resource": "*" }, { "Effect": "Allow", "Action": "autoscaling:Describe*", "Resource": "*" } ] }
输出:
{ "Credentials": { "AccessKeyId": "ASIAIOSFODNN7EXAMPLE", "SecretAccessKey": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY", "SessionToken": "EXAMPLEpZ2luX2VjEGoaCXVzLXdlc3QtMiJIMEYCIQC/W9pL5ArQyDD5JwFL3/h5+WGopQ24GEXweNctwhi9sgIhAMkg+MZE35iWM8s4r5Lr25f9rSTVPFH98G42QQunWMTfKq0DCOP//////////wEQAxoMNDUyOTI1MTcwNTA3Igxuy3AOpuuoLsk3MJwqgQPg8QOd9HuoClUxq26wnc/nm+eZLjHDyGf2KUAHK2DuaS/nrGSEXAMPLE", "Expiration": "2023-12-20T02:06:07+00:00" }, "FederatedUser": { "FederatedUserId": "111122223333:Bob", "Arn": "arn:aws:sts::111122223333:federated-user/Bob" }, "PackedPolicySize": 36 }
有关更多信息,请参阅《AWS IAM 用户指南》中的请求临时安全凭证。
-
有关 API 的详细信息,请参阅AWS CLI 命令参考GetFederationToken
中的。
-
- PowerShell
-
- 适用于 PowerShell V4 的工具
-
示例 1:使用“Bob”作为联合用户的名称,请求有效期为一小时的联合令牌。此名称可用于引用基于资源的策略(例如 Amazon S3 存储桶策略)中的联合用户名。以 JSON 格式提供的 IAM 策略可用于缩小 IAM 用户可用权限的范围。提供的策略授予的权限不能超过授予请求用户的权限,联合用户的最终权限是,基于传递的策略和 IAM 用户策略交集的限制性最强的集合。
Get-STSFederationToken -Name "Bob" -Policy "...JSON policy..." -DurationInSeconds 3600
-
有关 API 的详细信息,请参阅 AWS Tools for PowerShell Cmdlet 参考 (V 4) GetFederationToken中的。
-
DecodeAuthorizationMessage
GetSessionToken