【发布时间】:2020-12-16 09:15:51
【问题描述】:
我正在尝试使用带有 STS 的 java 创建 s3 客户端
BasicSessionCredentials credentials = getCredentialsOfCurrentRole();
AWSSecurityTokenService sts = new
AWSSecurityTokenServiceClient(credentials).withRegion(REGION);
AssumeRoleRequest assumeRoleRequest = new AssumeRoleRequest().withRoleArn(roleArn)
.withDurationSeconds(getDurationToAssumeRole())
.withRoleSessionName(sessionName);
AssumeRoleResult assumeRoleResult = sts.assumeRole(assumeRoleRequest);
// Get temporary credentials of assumed role
assumedRoleCredentials = assumeRoleResult.getCredentials();
但在请求 IAM 角色的临时凭证时出现以下异常
Failed to get credentials using STS. Reason:
com.amazonaws.services.securitytoken.model.AWSSecurityTokenServiceException: User:
arn:aws:sts::434234520724:assumed-role/myapplication.role.name/kiam-kiam is not authorized to
perform: sts:AssumeRole on resource: arn:aws:iam::412341320567:role/webapplication.app.com
【问题讨论】:
标签: amazon-web-services amazon-s3 amazon-iam sts