in emr-user-role-mapper-s3storagebasedauthorizationmanager/src/main/java/com/amazonaws/emr/urm/hive/urmstoragebasedauthorizer/URMCredentialsRetriever.java [48:69]
private AWSCredentials extractCredentialsFromResponse(String inputResponse) throws IOException
{
ObjectMapper objectMapper = new ObjectMapper();
JsonNode rootNode = objectMapper.readTree(inputResponse);
if (rootNode == null) {
throw new RuntimeException("AwsCredentialExtractor: Rootnode is null!");
}
JsonNode accessKeyId = rootNode.path("AccessKeyId");
JsonNode secretAccessKey = rootNode.path("SecretAccessKey");
JsonNode sessionToken = rootNode.path("Token");
if (accessKeyId == null || secretAccessKey == null || sessionToken == null) {
LOG.error(String.format("ExtractCredentialsFromResponse: AccessKeyId isNull:%s secretAccessKey isNull: %s token isNull: %s",
accessKeyId == null, secretAccessKey == null, sessionToken == null));
throw new RuntimeException("ExtractCredentialsFromResponse: Credentials from URM came back with null value! ");
}
// Create a BasicSessionCredentials object that contains the credentials you just retrieved.
return new BasicSessionCredentials(accessKeyId.asText(), secretAccessKey.asText(), sessionToken.asText());
}