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, que não pode ser anexada a nenhuma outra entidade do IAM.
Um perfil vinculado ao serviço poderá ser excluído somente após excluir seus atributos 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 a serviços, consulte Serviços da AWS que funcionam com o IAM e procure os serviços que apresentam Sim na coluna Perfis vinculados a serviços. Escolha um Sim com um link para acessar a documentação do perfil vinculado para 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
-
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.
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.
Você deve configurar permissões para que uma entidade do IAM (por exemplo, um usuário, grupo ou função) crie, edite ou exclua um perfil vinculado a serviço. Para obter mais informações, consulte Permissões de perfil vinculado 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 um perfil vinculado ao serviço. Ao criar uma aplicação do EMR Sem Servidor no Console de gerenciamento da AWS (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 um perfil vinculado 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 você excluir esse perfil vinculado ao serviço e precisar criá-lo novamente, use esse mesmo processo para recriar o perfil na 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 um perfil vinculado a serviço com o nome de serviço ops.emr-serverless.amazonaws.com. Para obter mais informações, consulte Criar um perfil vinculado ao serviço no Guia do usuário do IAM. Se você excluir essa função vinculada ao serviço, use 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, você poderá editar a descrição do perfil usando o IAM.
Para editar a descrição do perfil vinculado ao serviço AWSServiceRoleForAmazonEMRServerless usando o IAM
Adicione a instrução abaixo à política de permissões da entidade do IAM para a qual precise editar a descrição de um perfil vinculado 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 obter mais informações, consulte Editar um perfil vinculado ao 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 recurso ou serviço que requer um perfil vinculado ao serviço, é recomendável excluí-lo. 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 o perfil vinculado ao 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 um perfil vinculado 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.