Usar perfis do IAM com aplicações que chamam diretamente os serviços da AWS - Amazon EMR

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Usar perfis do IAM com aplicações que chamam diretamente os serviços da AWS

Os aplicativos executados nas instâncias do EC2 de um cluster podem usar o perfil da instância do EC2 para obter credenciais de segurança temporárias ao chamar serviços. AWS

As versões do Hadoop disponíveis com a versão 2.3.0 e posteriores do Amazon EMR já foram atualizadas para usar perfis do IAM. Se seu aplicativo é executado estritamente sobre a arquitetura do Hadoop e não chama diretamente nenhum serviço AWS, ele deve funcionar com funções do IAM sem modificações.

Se seu aplicativo chamar serviços AWS diretamente, você precisará atualizá-lo para aproveitar as funções do IAM. Isso significa que, em vez de obter credenciais de conta de /etc/hadoop/conf/core-site.xml nas instâncias do EC2 no cluster, sua aplicação usa um SDK para acessar os recursos usando perfis do IAM ou chama os metadados de instâncias do EC2 para obter as credenciais temporárias.

Para acessar AWS recursos com funções do IAM usando um SDK
Para obter credenciais temporárias de metadados de instâncias do EC2
  • Chame a seguinte URL de uma instância do EC2 que está sendo executada com a função IAM especificada, que retorna as credenciais de segurança temporárias associadas (AccessKeyId, SecretAccessKey SessionToken, e Expiration). O exemplo a seguir usa o perfil de instância padrão para o Amazon EMR, EMR_EC2_DefaultRole.

    GET http://169.254.169.254/latest/meta-data/iam/security-credentials/EMR_EC2_DefaultRole

Para obter mais informações sobre como escrever aplicativos que usam funções do IAM, consulte Conceder acesso AWS a recursos para aplicativos executados em instâncias do Amazon EC2.

Para obter mais informações sobre credenciais de segurança temporárias, consulte Using temporary security credentials no guia Using Temporary Security Credentials.