use of com.amazonaws.arn.Arn in project titus-control-plane by Netflix.
the class AmazonClientProvider method getAwsCredentialsProvider.
private AWSCredentialsProvider getAwsCredentialsProvider(String accountId) {
AWSCredentialsProvider credentialsProvider = awsCredentialsByAccountId.get(accountId);
if (credentialsProvider == null) {
synchronized (this) {
credentialsProvider = awsCredentialsByAccountId.get(accountId);
if (credentialsProvider == null) {
String roleSessionName = configuration.getControlPlaneRoleSessionName();
int roleSessionDurationSeconds = configuration.getControlPlaneRoleSessionDurationSeconds();
Arn roleArn = getControlPlaneRoleArnForAccount(accountId);
credentialsProvider = new STSAssumeRoleSessionCredentialsProvider.Builder(roleArn.toString(), roleSessionName).withStsClient(stsClient).withRoleSessionDurationSeconds(roleSessionDurationSeconds).build();
awsCredentialsByAccountId.put(accountId, credentialsProvider);
}
}
}
return credentialsProvider;
}
Aggregations