Funções de tempo de execução de trabalho para Amazon EMR Serverless - Amazon EMR

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Funções de tempo de execução de trabalho para Amazon EMR Serverless

Você pode especificar as permissões de IAM função que uma execução de trabalho EMR sem servidor pode assumir ao chamar outros serviços em seu nome. Isso inclui acesso ao Amazon S3 para quaisquer fontes de dados, destinos e outros AWS recursos, como clusters do Amazon Redshift e tabelas do DynamoDB. Para saber mais sobre como criar uma função, consulteCrie uma função de tempo de execução do trabalho.

Exemplos de políticas de tempo de execução

Você pode anexar uma política de tempo de execução, como a seguinte, a uma função de tempo de execução do trabalho. A seguinte política de tempo de execução de tarefas permite:

  • Acesso de leitura aos buckets do Amazon S3 com amostras. EMR

  • Acesso total aos buckets do S3.

  • Crie e leia o acesso ao AWS Glue Data Catalog.

Para adicionar acesso a outros AWS recursos, como o DynamoDB, você precisará incluir permissões para eles na política ao criar a função de tempo de execução.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "ReadAccessForEMRSamples", "Effect": "Allow", "Action": [ "s3:GetObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::*.elasticmapreduce", "arn:aws:s3:::*.elasticmapreduce/*" ] }, { "Sid": "FullAccessToS3Bucket", "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:ListBucket", "s3:DeleteObject" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket", "arn:aws:s3:::amzn-s3-demo-bucket/*" ] }, { "Sid": "GlueCreateAndReadDataCatalog", "Effect": "Allow", "Action": [ "glue:GetDatabase", "glue:CreateDatabase", "glue:GetDataBases", "glue:CreateTable", "glue:GetTable", "glue:UpdateTable", "glue:DeleteTable", "glue:GetTables", "glue:GetPartition", "glue:GetPartitions", "glue:CreatePartition", "glue:BatchCreatePartition", "glue:GetUserDefinedFunctions" ], "Resource": ["*"] } ] }

Passe privilégios de função

Você pode anexar políticas de IAM permissões à função de um usuário para permitir que ele transmita somente funções aprovadas. Isso permite que os administradores controlem quais usuários podem passar funções específicas de tempo de execução de tarefas para tarefas EMR sem servidor. Para saber mais sobre como definir permissões, consulte Conceder permissões a um usuário para passar uma função para um AWS serviço.

Veja a seguir um exemplo de política que permite passar uma função de tempo de execução do trabalho para o responsável pelo serviço EMR sem servidor.

{ "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:aws:iam::1234567890:role/JobRuntimeRoleForEMRServerless", "Condition": { "StringLike": { "iam:PassedToService": "emr-serverless.amazonaws.com" } } }