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.
Política de IAM de ejecución
Puede especificar una política de IAM de ejecución, además de un rol de ejecución, al enviar las ejecuciones de trabajos en EMR sin servidor. Los permisos resultantes que asume la ejecución del trabajo son la intersección de los permisos del rol de ejecución y la política de IAM de ejecución especificada.
Introducción
Pasos para usar la política de IAM de ejecución:
Cree una aplicación emr-serverless o use una existente y, a continuación, ejecute la siguiente CLI de <shared id="AWS"/> para iniciar una ejecución de trabajo con una política de IAM integrada:
aws emr-serverless start-job-run --region us-west-2 \ --application-idapplication-id\ --execution-role-arnexecution-role-arn\ --job-driverjob-driver-options\ --execution-iam-policy '{"policy": "inline-policy"}'
Ejemplos de comandos de la CLI
Si tenemos la siguiente política almacenada en el archivo policy.json de la máquina:
A continuación, podemos iniciar un trabajo con esta política mediante el siguiente AWS CLI comando:
aws emr-serverless start-job-run --region us-west-2 \ --application-idapplication-id\ --execution-role-arnexecution-role-arn\ --job-driverjob-driver-options--execution-iam-policy '{ "policy": '$(jq -c '. | @json' policy.json)' }'
También puede utilizar ambas políticas AWS y las gestionadas por el cliente, especificándolas mediante ARNs:
aws emr-serverless start-job-run --region us-west-2 \ --application-idapplication-id\ --execution-role-arnexecution-role-arn\ --job-driverjob-driver-options--execution-iam-policy '{ "policyArns": [ "arn:aws:iam::aws:policy/AmazonS3FullAccess", "arn:aws:iam::aws:policy/CloudWatchLogsFullAccess" ] }'
También es posible especificar una política de IAM integrada y una política gestionada ARNs en la misma solicitud:
aws emr-serverless start-job-run --region us-west-2 \ --application-idapplication-id\ --execution-role-arnexecution-role-arn\ --job-driverjob-driver-options--execution-iam-policy '{ "policy": '$(jq -c '. | @json' policy.json)', "policyArns": [ "arn:aws:iam::aws:policy/AmazonS3FullAccess", "arn:aws:iam::aws:policy/CloudWatchLogsFullAccess" ] }'
Notas importantes
El campo
policyde laexecution-role-policypuede tener una longitud máxima de 2048 caracteres.La cadena de política de IAM integrada que se especifica en el campo
policyde laexecution-iam-policydebe ajustarse al estándar de cadenas json y no debe omitir líneas nuevas ni comillas como en el ejemplo anterior.Se ARNs puede especificar una lista de hasta 10 políticas gestionadas como valor en el campo
execution-iam-policy.policyArnsLa política administrada ARNs debe ser una lista de ARN de políticas administradas por el cliente AWS o válidas. Cuando se especifica un ARN de política administrada por el cliente, la política debe pertenecer a la misma AWS cuenta del EMR-S. JobRun
Cuando se usan una política de IAM integrada y políticas administradas, el texto simple que se utilice para ambas políticas combinadas no puede superar los 2048 caracteres.
Los permisos resultantes que asume JobRun son la intersección de los permisos de la función de ejecución y la política de IAM de ejecución especificada.
Intersección de políticas
Los permisos resultantes que asume la ejecución del trabajo son la intersección de los permisos del rol de ejecución y la política de IAM de ejecución especificada. Lo que significa que cualquier permiso requerido tendrá que especificarse en ambos lugares JobRun para que funcione. Sin embargo, es posible especificar una declaración de autorización general adicional en la política integrada para cualquier permiso que no se pretenda actualizar o sobrescribir.
Ejemplo
Dada la siguiente política de rol de IAM de ejecución:
Y la siguiente política de IAM insertada:
Los permisos resultantes que asumen JobRun son: