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

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

Aplicativos executados nas instâncias do EC2 de um cluster podem usar o perfil de instância do EC2 para obter credenciais de segurança temporárias ao chamarem serviços da 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 sua aplicação for executada estritamente na arquitetura do Hadoop e não chama diretamente nenhum serviço da AWS, ele deverá funcionar com perfis do IAM sem nenhuma modificação.

Se a aplicação chamar serviços na AWS diretamente, você precisará atualizá-la para aproveitar os perfis 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.

Acessar os recursos da AWS com perfis 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 o perfil do IAM especificado, 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 gravar aplicações que usam perfis do IAM, consulte Granting applications that run on Amazon EC2 instances access to AWS resources.

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