Uso de roles de IAM con las aplicaciones que llaman directamente a los servicios de AWS - Amazon EMR

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Uso de roles de IAM con las aplicaciones que llaman directamente a los servicios de AWS

Las aplicaciones que se ejecutan en las instancias EC2 de un clúster pueden usar el perfil de instancia EC2 para obtener credenciales de seguridad temporales al llamar a los servicios. AWS

Las versiones de Hadoop disponibles con la versión 2.3.0 y posteriores de Amazon EMR ya se han actualizado para utilizar roles de IAM. Si su aplicación se ejecuta estrictamente sobre la arquitectura Hadoop y no llama directamente a ningún servicio AWS, debería funcionar con las funciones de IAM sin modificaciones.

Si su aplicación llama AWS directamente a los servicios, debe actualizarla para aprovechar las funciones de IAM. Esto significa que, en lugar de obtener credenciales de cuenta de /etc/hadoop/conf/core-site.xml en las instancias de EC2 del clúster, la aplicación utiliza un SDK para acceder a los recursos que utilizan roles de IAM o llama a los metadatos de la instancia de EC2 para obtener las credenciales temporales.

Para acceder a AWS los recursos con funciones de IAM mediante un SDK
Para obtener credenciales temporales de metadatos de instancias EC2
  • Llame a la siguiente URL desde una instancia de EC2 que se ejecute con la función de IAM especificada, que devolverá las credenciales de seguridad temporales asociadas (AccessKeyId, SecretAccessKey SessionToken, y caducidad). En el ejemplo que aparece a continuación se utiliza el perfil de instancia predeterminado para Amazon EMR, EMR_EC2_DefaultRole.

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

Para obtener más información sobre cómo escribir aplicaciones que utilizan funciones de IAM, consulte Conceder acceso AWS a los recursos a las aplicaciones que se ejecutan en instancias de Amazon EC2.

Para obtener más información acerca de las credenciales de seguridad temporales, consulte Uso de credenciales de seguridad temporales en la guía Uso de credenciales de seguridad temporales.