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.
Autorización del acceso a EMRFS los datos en Amazon S3
De forma predeterminada, la EMR función de EC2 determina los permisos de acceso a EMRFS los datos en Amazon S3. Las IAM políticas asociadas a este rol se aplican independientemente del usuario o grupo que realice la solicitudEMRFS. El valor predeterminado es EMR_EC2_DefaultRole
. Para obtener más información, consulte Función de servicio para EC2 instancias de clúster (perfil de EC2 instancia).
A partir de la EMR versión 5.10.0 de Amazon, puede utilizar una configuración de seguridad para especificar las IAM funciones. EMRFS Esto le permite personalizar los permisos de EMRFS las solicitudes a Amazon S3 para los clústeres que tienen varios usuarios. Puede especificar diferentes IAM roles para distintos usuarios y grupos, y para diferentes ubicaciones de bucket de Amazon S3 en función del prefijo de Amazon S3. Cuando EMRFS realiza una solicitud a Amazon S3 que coincide con los usuarios, los grupos o las ubicaciones que especifique, el clúster utiliza la función correspondiente que especifique en lugar de la EMR función para la que usted especifiqueEC2. Para obtener más información, consulte Configurar IAM funciones para EMRFS solicitudes a Amazon S3.
Como alternativa, si su EMR solución de Amazon tiene exigencias que van más allá de las IAM funciones que EMRFS proporciona, puede definir una clase de proveedor de credenciales personalizada, que le permita personalizar el acceso a EMRFS los datos en Amazon S3.
Creación de un proveedor de credenciales personalizado para EMRFS los datos en Amazon S3
Para crear un proveedor de credenciales personalizado, debe implementar las clases configurables
Para obtener una explicación detallada de este enfoque, consulte Analizar de forma segura los datos de otra AWS cuenta EMRFS
Los pasos básicos son los siguientes:
Para especificar un proveedor de credenciales personalizado
Cree una clase de proveedor de credenciales personalizada compilada como un JAR archivo.
Ejecute un script como acción de arranque para copiar el JAR archivo del proveedor de credenciales personalizadas en la
/usr/share/aws/emr/emrfs/auxlib
ubicación del nodo principal del clúster. Para obtener más información acerca de las acciones de arranque, consulte (Opcional) Crear acciones de arranque para instalar software adicional.-
Personalice la
emrfs-site
clasificación para especificar la clase que va a implementar en el JAR archivo. Para obtener más información sobre la especificación de objetos de configuración para personalizar las aplicaciones, consulte Configuración de aplicaciones en la Guía de EMR versiones de Amazon.En el siguiente ejemplo se muestra un comando
create-cluster
que lanza un clúster de Hive con parámetros de configuración comunes, y que también incluye:Una acción de arranque que se ejecuta el script,
, que se guarda encopy_jar_file.sh
en Amazon S3.amzn-s3-demo-bucket
emrfs-site
Clasificación que especifica un proveedor de credenciales personalizadas definido en el JAR archivo comoMyCustomCredentialsProvider
nota
Se incluyen caracteres de continuación de línea de Linux (\) para facilitar la lectura. Se pueden eliminar o utilizar en los comandos de Linux. En Windows, elimínelos o sustitúyalos por un signo de intercalación (^).
aws emr create-cluster --applications Name=Hive \ --bootstrap-actions '[{"Path":"
s3://amzn-s3-demo-bucket/copy_jar_file.sh
","Name":"Custom action"}]' \ --ec2-attributes '{"KeyName":"MyKeyPair
","InstanceProfile":"EMR_EC2_DefaultRole",\ "SubnetId":"subnet-xxxxxxxx","EmrManagedSlaveSecurityGroup":"sg-xxxxxxxx",\ "EmrManagedMasterSecurityGroup":"sg-xxxxxxxx"}' \ --service-role EMR_DefaultRole_V2 --enable-debugging --release-labelemr-7.5.0
\ --log-uri 's3n://amzn-s3-demo-bucket
/' --name 'test-awscredentialsprovider-emrfs' \ --instance-type=m5.xlarge --instance-count 3 \ --configurations '[{"Classification":"emrfs-site",\ "Properties":{"fs.s3.customAWSCredentialsProvider":"MyAWSCredentialsProviderWithUri"},\ "Configurations":[]}]'