· 8 years ago · Feb 01, 2018, 11:06 AM
1AWSCredentialsProvider awsCredentialsProvider = null;
2
3 if (StringUtils.isNotBlank(accessKey) && StringUtils.isNotBlank(secretKey)) {
4
5 LOGGER.info("Get AWSCredentialsProvider from access key {} and secret key {} ",accessKey, secretKey );
6 awsCredentialsProvider = new StaticCredentialsProvider(new BasicAWSCredentials(accessKey, secretKey));
7
8 } else {
9 // Get credentials from IMDS. If unsuccessful, get them from the classpath.
10 LOGGER.info("access and secret key did not set; will try using instance profile");
11 final InstanceProfileCredentialsProvider instanceProfileCredentialsProvider = new InstanceProfileCredentialsProvider();
12 try {
13 instanceProfileCredentialsProvider.getCredentials();
14 awsCredentialsProvider = instanceProfileCredentialsProvider;
15 LOGGER.info("Obtained credentials from the Instance Meta Data Service.");
16 } catch (AmazonClientException e) {
17 LOGGER.info("Unable to obtain credentials from the IMDS, trying classpath properties : {}", e);
18 awsCredentialsProvider = new ClasspathPropertiesFileCredentialsProvider();
19 if (awsCredentialsProvider != null) {
20 // Verify we can fetch credentials from the provider
21 awsCredentialsProvider.getCredentials();
22 LOGGER.info("Obtained credentials from the properties file.");
23 }
24 }
25
26 }