Ejemplos de políticas de acceso de usuario para EMR sin servidor
Puede configurar políticas detalladas para sus usuarios en función de las acciones que desee que realice cada usuario al interactuar con las aplicaciones EMR sin servidor. Las siguientes políticas son ejemplos que pueden ayudar a configurar los permisos correctos para sus usuarios. Esta sección se centra únicamente en las políticas EMR sin servidor. Para ver ejemplos de las políticas de usuario de EMR Studio, consulte Configuración de los permisos de usuario de EMR Studio. Para obtener información sobre cómo asociar políticas a los usuarios de IAM (entidades principales), consulte Administración de políticas de IAM en la Guía del usuario de IAM.
Política de usuarios avanzados
Para conceder todas las acciones necesarias para EMR sin servidor, cree y adjunte una política de AmazonEMRServerlessFullAccess
al usuario, rol o grupo de IAM requerido.
El siguiente es un ejemplo de política que permite a los usuarios avanzados crear y modificar aplicaciones EMR sin servidor, así como realizar otras acciones, como enviar y depurar trabajos. Revela todas las acciones que EMR sin servidor requiere para otros servicios.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "EMRServerlessActions", "Effect": "Allow", "Action": [ "emr-serverless:CreateApplication", "emr-serverless:UpdateApplication", "emr-serverless:DeleteApplication", "emr-serverless:ListApplications", "emr-serverless:GetApplication", "emr-serverless:StartApplication", "emr-serverless:StopApplication", "emr-serverless:StartJobRun", "emr-serverless:CancelJobRun", "emr-serverless:ListJobRuns", "emr-serverless:GetJobRun" ], "Resource": "*" } ] }
Cuando habilita la conectividad de red con su VPC, las aplicaciones EMR sin servidor crean interfaces de red elásticas (ENI) de Amazon EC2 para comunicarse con los recursos de la VPC. La siguiente política garantiza que cualquier ENI de EC2 nuevo solo se cree en el contexto de las aplicaciones EMR sin servidor.
nota
Recomendamos encarecidamente establecer esta política para garantizar que los usuarios no puedan crear ENI de EC2 excepto en el contexto del lanzamiento de aplicaciones EMR sin servidor.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowEC2ENICreationWithEMRTags", "Effect": "Allow", "Action": [ "ec2:CreateNetworkInterface" ], "Resource": [ "arn:aws:ec2:*:*:network-interface/*" ], "Condition": { "StringEquals": { "aws:CalledViaLast": "ops.emr-serverless.amazonaws.com" } } } }
Si desea restringir el acceso de EMR sin servidor a determinadas subredes, puede etiquetar cada subred con una condición de etiqueta. Esta política de IAM garantiza que las aplicaciones de EMR sin servidor solo puedan crear ENI de EC2 dentro de las subredes permitidas.
{ "Sid": "AllowEC2ENICreationInSubnetAndSecurityGroupWithEMRTags", "Effect": "Allow", "Action": [ "ec2:CreateNetworkInterface" ], "Resource": [ "arn:aws:ec2:*:*:subnet/*", "arn:aws:ec2:*:*:security-group/*" ], "Condition": { "StringEquals": { "aws:ResourceTag/
KEY
": "VALUE
" } } }
importante
Si es un administrador o un usuario avanzado que crea su primera aplicación, debe configurar sus políticas de permisos para que le permitan crear un rol vinculado al servicio EMR sin servidor. Para obtener más información, consulte Uso de rRoles vinculados al servicio de EMR sin servidor.
La siguiente política de IAM le permite crear un rol vinculado al servicio de EMR sin servidor para su cuenta.
{ "Sid":"AllowEMRServerlessServiceLinkedRoleCreation", "Effect":"Allow", "Action":"iam:CreateServiceLinkedRole", "Resource":"arn:aws:iam::
account-id
:role/aws-service-role/ops.emr-serverless.amazonaws.com/AWSServiceRoleForAmazonEMRServerless" }
Política de ingeniero de datos
A continuación se muestra un ejemplo de política que permite a los usuarios permisos de solo lectura en las aplicaciones EMR sin servidor, así como la posibilidad de enviar y depurar trabajos. Tenga en cuenta que, dado que esta política no deniega acciones explícitamente, se puede seguir utilizando una instrucción de política distinta para otorgar acceso a acciones especificadas.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "EMRServerlessActions", "Effect": "Allow", "Action": [ "emr-serverless:ListApplications", "emr-serverless:GetApplication", "emr-serverless:StartApplication", "emr-serverless:StartJobRun", "emr-serverless:CancelJobRun", "emr-serverless:ListJobRuns", "emr-serverless:GetJobRun" ], "Resource": "*" } ] }
Uso de etiquetas para el control de acceso
Puede usar condiciones de etiquetado para el control de acceso detallado. Por ejemplo, puede restringir a los usuarios de un equipo para que solo puedan enviar trabajos a aplicaciones EMR sin servidor y etiquetadas con el nombre de su equipo.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "EMRServerlessActions", "Effect": "Allow", "Action": [ "emr-serverless:ListApplications", "emr-serverless:GetApplication", "emr-serverless:StartApplication", "emr-serverless:StartJobRun", "emr-serverless:CancelJobRun", "emr-serverless:ListJobRuns", "emr-serverless:GetJobRun" ], "Resource": "*", "Condition": { "StringEquals": { "aws:ResourceTag/Team": "
team-name
" } } } ] }