Uso de perfis vinculados ao serviço para o EMR Sem Servidor - 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á.

Uso de perfis vinculados ao serviço para o EMR Sem Servidor

O Amazon EMR Sem Servidor usa perfis vinculados ao serviço do AWS Identity and Access Management (IAM). Um perfil vinculado ao serviço é um tipo exclusivo de perfil do IAM vinculado diretamente ao EMR Sem Servidor. Os perfis vinculados a serviços são predefinidos pelo EMR Sem Servidor e incluem todas as permissões que o serviço requer para chamar outros serviços da AWS em seu nome.

Um perfil vinculado ao serviço facilita a configuração do EMR Sem Servidor porque você não precisa adicionar as permissões necessárias manualmente. O EMR Sem Servidor define as permissões desses perfis vinculados ao serviço e, exceto se definido de outra forma, somente o EMR Sem Servidor pode assumir os próprios perfis. As permissões definidas incluem a política de confiança e a política de permissões, e essa política não pode ser anexada a nenhuma outra entidade do IAM.

Uma função vinculada ao serviço poderá ser excluída somente após excluir seus recursos relacionados. Isso protege seus recursos do EMR Sem Servidor, porque você não pode remover a permissão por engano para acessá-los.

Para obter informações sobre outros serviços compatíveis com perfis vinculados aos serviços, consulte Serviços da AWS que funcionam com o IAM e procure os serviços que apresentam Sim na coluna Funções vinculadas aos serviços. Escolha um Sim com um link para visualizar a documentação da função vinculada a esse serviço.

Permissões de perfil vinculado ao serviço do EMR Sem Servidor

O EMR Sem Servidor usa o perfil vinculado ao serviço denominado AWSServiceRoleForAmazonEMRServerless para permitir que ele chame APIs da AWS em seu nome.

O perfil vinculado a serviço AWSServiceRoleForAmazonEMRServerless confia nos seguintes serviços para assumir o perfil:

  • ops.emr-serverless.amazonaws.com

A política de permissões do perfil chamada AmazonEMRServerlessServiceRolePolicy permite que o EMR Sem Servidor conclua as ações a seguir nos recursos especificados.

nota

Como o conteúdo da política gerenciada muda, a política mostrada aqui pode estar desatualizada. Confira a política AmazonEMRServerlessServiceRolePolicy mais atualizada no AWS Management Console.

  • Ação: ec2:CreateNetworkInterface

  • Ação: ec2:DeleteNetworkInterface

  • Ação: ec2:DescribeNetworkInterfaces

  • Ação: ec2:DescribeSecurityGroups

  • Ação: ec2:DescribeSubnets

  • Ação: ec2:DescribeVpcs

  • Ação: ec2:DescribeDhcpOptions

  • Ação: ec2:DescribeRouteTables

  • Ação: cloudwatch:PutMetricData

A política a seguir é a AmazonEMRServerlessServiceRolePolicy completa.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "EC2PolicyStatement", "Effect": "Allow", "Action": [ "ec2:CreateNetworkInterface", "ec2:DeleteNetworkInterface", "ec2:DescribeNetworkInterfaces", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:DescribeVpcs", "ec2:DescribeDhcpOptions", "ec2:DescribeRouteTables" ], "Resource": "*" }, { "Sid": "CloudWatchPolicyStatement", "Effect": "Allow", "Action": [ "cloudwatch:PutMetricData" ], "Resource": [ "*" ], "Condition": { "StringEquals": { "cloudwatch:namespace": [ "AWS/EMRServerless", "AWS/Usage" ] } } } ] }

A política de confiança a seguir está anexada a esse perfil para permitir que a entidade principal do EMR Sem Servidor assuma o perfil.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "ops.emr-serverless.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] }

Você deve configurar permissões para que uma entidade do IAM (por exemplo, um usuário, grupo ou função) crie, edite ou exclua uma função vinculada a serviço. Para obter mais informações, consulte Permissões de função vinculada a serviços no Guia do Usuário do IAM.

Criação de um perfil vinculado ao serviço do EMR Sem Servidor

Não é necessário criar manualmente uma função vinculada ao serviço. Ao criar uma aplicação do EMR Sem Servidor no AWS Management Console (usando o EMR Studio), na AWS CLI ou na API da AWS, o EMR Sem Servidor cria o perfil vinculado ao serviço para você. Você deve configurar permissões para que uma entidade do IAM (por exemplo, um usuário, grupo ou função) crie, edite ou exclua uma função vinculada a serviço.

Para criar o perfil vinculado ao serviço AWSServiceRoleForAmazonEMRServerless usando o IAM

Adicione a instrução a seguir à política de permissões da entidade do IAM que precisa criar o perfil vinculado ao serviço.

{ "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole" ], "Resource": "arn:aws:iam::*:role/aws-service-role/ops.emr-serverless.amazonaws.com/AWSServiceRoleForAmazonEMRServerless*", "Condition": {"StringLike": {"iam:AWSServiceName": "ops.emr-serverless.amazonaws.com"}} }

Se excluir essa função vinculada ao serviço e precisar criá-la novamente, você poderá usar esse mesmo processo para recriar a função em sua conta. Ao criar uma aplicação do EMR Sem Servidor, o EMR Sem Servidor cria o perfil vinculado ao serviço para você novamente.

Você também pode usar o console do IAM para criar um perfil vinculado ao serviço com o caso de uso EMR Sem Servidor. Na AWS CLI ou na API do AWS, crie uma função vinculada ao serviço com o nome de serviço ops.emr-serverless.amazonaws.com. Para obter mais informações, consulte Criar uma função vinculada ao serviço no Manual do usuário do IAM. Se você excluir essa função vinculada ao serviço, será possível usar esse mesmo processo para criar a função novamente.

Edição de um perfil vinculado ao serviço do EMR Sem Servidor

O EMR Sem Servidor não permite editar o perfil vinculado ao serviço AWSServiceRoleForAmazonEMRServerless, pois várias entidades podem fazer referência a ele. Não é possível editar a política do IAM de propriedade da AWS que o perfil vinculado ao serviço do EMR Sem Servidor usa, pois ela contém todas as permissões necessárias do EMR Sem Servidor. No entanto, será possível editar a descrição da função usando o IAM.

Para editar a descrição do perfil vinculado ao serviço AWSServiceRoleForAmazonEMRServerless usando o IAM

Adicione a seguinte declaração a política de permissões da entidade do IAM para a qual precise editar a descrição de uma função vinculada ao serviço.

{ "Effect": "Allow", "Action": [ "iam: UpdateRoleDescription" ], "Resource": "arn:aws:iam::*:role/aws-service-role/ops.emr-serverless.amazonaws.com/AWSServiceRoleForAmazonEMRServerless*", "Condition": {"StringLike": {"iam:AWSServiceName": "ops.emr-serverless.amazonaws.com"}} }

Para ter mais informações, consulte Editar uma função vinculada a serviço no Guia do usuário do IAM.

Exclusão de um perfil vinculado a serviço do EMR Sem Servidor

Se você não precisar mais usar um atributo ou serviço que exija uma função vinculada a um serviço, recomendamos que você exclua essa função. Dessa forma, você não tem uma entidade não utilizada que não seja monitorada ativamente ou mantida. Contudo, você deve excluir todas as aplicações do EMR Sem Servidor em todas as regiões para poder excluir o perfil vinculado ao serviço.

nota

Se o serviço EMR Sem Servidor estiver usando o perfil quando você tenta excluir os recursos associados ao perfil, a exclusão poderá falhar. Se isso acontecer, espere alguns minutos e tente a operação novamente.

Para excluir o perfil vinculado ao serviço AWSServiceRoleForAmazonEMRServerless usando o IAM

Adicione a instrução a seguir à política de permissões da entidade do IAM que precisa excluir um perfil vinculado ao serviço.

{ "Effect": "Allow", "Action": [ "iam:DeleteServiceLinkedRole", "iam:GetServiceLinkedRoleDeletionStatus" ], "Resource": "arn:aws:iam::*:role/aws-service-role/ops.emr-serverless.amazonaws.com/AWSServiceRoleForAmazonEMRServerless*", "Condition": {"StringLike": {"iam:AWSServiceName": "ops.emr-serverless.amazonaws.com"}} }

Como excluir manualmente a função vinculada a serviço usando o IAM

Use o console do IAM, a AWS CLI ou a API da AWS para excluir o perfil vinculado ao serviço AWSServiceRoleForAmazonEMRServerless. Para obter mais informações, consulte Excluir uma função vinculada ao serviço no Guia do usuário do IAM.

Regiões compatíveis com perfis vinculados ao serviço do EMR Sem Servidor

O EMR Sem Servidor é compatível com a utilização de perfis vinculados ao serviço em todas as regiões em que o serviço está disponível. Para obter mais informações, consulte Regiões e endpoints da AWS.