'Is it possible to provide multiple roles in aws credentials provider using STS in spring boot?
Currently I have three roles, wherein each has the separate SQS access. I am connecting to AWS by using the roles. For connecting with single role, this code is helpful.
@Value("${cloud.aws.assumeRoleARN:}")
private String assumeRoleARN;
@Autowired
private AWSCredentialsProvider awsCredentialsProvider;
@Bean
@Primary
public AWSCredentialsProvider awsCredentialsProvider() {
log.info("Assuming role {}",assumeRoleARN);
if (StringUtils.isNotEmpty(assumeRoleARN)) {
AWSSecurityTokenService stsClient = AWSSecurityTokenServiceClientBuilder.standard()
.withClientConfiguration(clientConfiguration())
.withRegion("us-east-1")
.withCredentials(awsCredentialsProvider)
.build();
return new STSAssumeRoleSessionCredentialsProvider
.Builder(assumeRoleARN, "test")
.withStsClient(stsClient)
.build();
}
return awsCredentialsProvider;
}
But I need same credentials for all the three roles which I have. Is it possible to pass list of regions in the AWSSecurityTokenServiceClientBuilder?
Thanks in Advance!
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
Solution | Source |
---|