Funções vinculadas ao serviço do Amazon EC2 Auto Scaling - Amazon EC2 Auto Scaling

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 vinculadas ao serviço do Amazon EC2 Auto Scaling

O Amazon EC2 Auto Scaling usa perfis vinculados ao serviço para as permissões necessárias para chamar outros serviços da Serviços da AWS em seu nome. Uma função vinculada ao serviço é um tipo exclusivo de função do IAM vinculada diretamente a uma. AWS service (Serviço da AWS)

Os perfis vinculados a serviços oferecem uma maneira segura de delegar permissões a outros serviços da Serviços da AWS , pois somente o serviço vinculado pode assumir uma função vinculada ao serviço. Para obter mais informações, consulte Usar perfis vinculados ao serviço no Guia do usuário do IAM. As funções vinculadas ao serviço também permitem que todas as chamadas de API sejam visíveis por meio de. AWS CloudTrail Isso ajuda com os requisitos de monitoramento e auditoria porque você pode rastrear todas as ações que o Amazon EC2 Auto Scaling executa em seu nome. Para ter mais informações, consulte Registrar chamadas da API do Amazon EC2 Auto Scaling com o AWS CloudTrail.

As seções a seguir descrevem como criar e gerenciar funções vinculadas ao serviço do Amazon EC2 Auto Scaling. Comece configurando permissões para autorizar uma identidade do IAM (por exemplo, um usuário ou um perfil) a criar, editar ou excluir um perfil vinculado ao serviço. Para obter mais informações, consulte Usar perfis vinculados ao serviço no Guia do usuário do IAM.

Visão geral

Há dois tipos de funções vinculadas ao serviço do Amazon EC2 Auto Scaling:

  • A função vinculada ao serviço padrão para sua conta, chamada AWSServiceRoleForAutoScaling. Essa função é automaticamente atribuída aos seus grupos do Auto Scaling, a menos que você especifique outra função vinculada ao serviço.

  • Uma função vinculada ao serviço com um sufixo personalizado que você especifica ao criar a função, por exemplo, AWSServiceRoleForAutoScaling _ mysuffix.

As permissões de uma função vinculada ao serviço com sufixo personalizado são idênticas às da função vinculada ao serviço padrão. Em ambos os casos, você não poderá editar as funções nem excluí-las se elas ainda estiverem em uso por um grupo do Auto Scaling. A única diferença é o sufixo do nome da função.

Você pode especificar qualquer uma das funções ao editar suas políticas de AWS Key Management Service chaves para permitir que as instâncias lançadas pelo Amazon EC2 Auto Scaling sejam criptografadas com sua chave gerenciada pelo cliente. No entanto, se você planeja conceder acesso granular a uma determinada CMK gerenciada pelo cliente, você deverá usar uma função vinculada ao serviço com sufixo personalizado. O uso de uma função vinculada ao serviço com sufixo personalizado fornece:

  • Mais controle sobre a chave gerenciada pelo cliente

  • A capacidade de rastrear qual grupo do Auto Scaling fez uma chamada de API em seus registros CloudTrail

Se você criar chaves gerenciadas pelo cliente às quais nem todos os usuários devem ter acesso, siga estas etapas para permitir o uso de uma função vinculada ao serviço com sufixo personalizado:

  1. Crie uma função vinculada ao serviço com um sufixo personalizado. Para ter mais informações, consulte Criar uma função vinculada ao serviço (manual).

  2. Conceda à função vinculada ao serviço acesso a uma chave gerenciada pelo cliente. Para obter mais informações sobre a política de chaves que permite que a chave seja usada por uma função vinculada ao serviço, consulte Política de AWS KMS chaves necessária para uso com volumes criptografados.

  3. Dê aos usuários acesso à função vinculada ao serviço que você criou. Para obter mais informações sobre como criar políticas do IAM, consulte Controle qual função vinculada ao serviço pode ser passada (usando) PassRole. Se os usuários tentarem especificar uma função vinculada ao serviço sem permissão para passar essa função para o serviço, eles receberão um erro.

Permissões concedidas pela função vinculada ao serviço

O Amazon EC2 Auto Scaling usa a função vinculada ao serviço AWSServiceRoleForAutoScalingchamada ou seu sufixo personalizado função vinculada ao serviço.

A função vinculada ao serviço confia no seguinte serviço para assumir a função:

  • autoscaling.amazonaws.com

A função usa a política AutoScalingServiceRolePolicy, que inclui as seguintes permissões:

{ "Version":"2012-10-17", "Statement":[ { "Sid":"EC2InstanceManagement", "Effect":"Allow", "Action":[ "ec2:AttachClassicLinkVpc", "ec2:CancelSpotInstanceRequests", "ec2:CreateFleet", "ec2:CreateTags", "ec2:DeleteTags", "ec2:Describe*", "ec2:DetachClassicLinkVpc", "ec2:GetInstanceTypesFromInstanceRequirements", "ec2:GetSecurityGroupsForVpc", "ec2:ModifyInstanceAttribute", "ec2:RequestSpotInstances", "ec2:RunInstances", "ec2:StartInstances", "ec2:StopInstances", "ec2:TerminateInstances" ], "Resource":"*" }, { "Sid":"EC2InstanceProfileManagement", "Effect":"Allow", "Action":[ "iam:PassRole" ], "Resource":"*", "Condition":{ "StringLike":{ "iam:PassedToService":"ec2.amazonaws.com*" } } }, { "Sid":"EC2SpotManagement", "Effect":"Allow", "Action":[ "iam:CreateServiceLinkedRole" ], "Resource":"*", "Condition":{ "StringEquals":{ "iam:AWSServiceName":"spot.amazonaws.com" } } }, { "Sid":"ELBManagement", "Effect":"Allow", "Action":[ "elasticloadbalancing:Register*", "elasticloadbalancing:Deregister*", "elasticloadbalancing:Describe*" ], "Resource":"*" }, { "Sid":"CWManagement", "Effect":"Allow", "Action":[ "cloudwatch:DeleteAlarms", "cloudwatch:DescribeAlarms", "cloudwatch:GetMetricData", "cloudwatch:PutMetricAlarm" ], "Resource":"*" }, { "Sid":"SNSManagement", "Effect":"Allow", "Action":[ "sns:Publish" ], "Resource":"*" }, { "Sid":"EventBridgeRuleManagement", "Effect":"Allow", "Action":[ "events:PutRule", "events:PutTargets", "events:RemoveTargets", "events:DeleteRule", "events:DescribeRule" ], "Resource":"*", "Condition":{ "StringEquals":{ "events:ManagedBy":"autoscaling.amazonaws.com" } } }, { "Sid":"SystemsManagerParameterManagement", "Effect":"Allow", "Action":[ "ssm:GetParameters" ], "Resource": "*" }, { "Sid":"VpcLatticeManagement", "Effect":"Allow", "Action":[ "vpc-lattice:DeregisterTargets", "vpc-lattice:GetTargetGroup", "vpc-lattice:ListTargets", "vpc-lattice:ListTargetGroups", "vpc-lattice:RegisterTargets" ], "Resource": "*" } ] }

A função tem permissões para fazer o seguinte:

  • ec2— Crie, descreva, modifique, inicie/pare e encerre instâncias do EC2.

  • iamPasse funções do IAM para instâncias do EC2 para que os aplicativos em execução nas instâncias possam acessar credenciais temporárias para a função.

  • iam— Crie a função AWSServiceRoleForEC2Spotvinculada ao serviço para permitir que o Amazon EC2 Auto Scaling lance instâncias spot em seu nome.

  • elasticloadbalancing— Registre e cancele o registro de instâncias com o Elastic Load Balancing e verifique a integridade dos alvos registrados.

  • cloudwatch— crie, descreva, modifique e exclua CloudWatch alarmes para políticas de escalabilidade e recupere métricas usadas para escalabilidade preditiva.

  • sns— Publique notificações no Amazon SNS quando as instâncias são iniciadas ou encerradas.

  • events— Crie, descreva, atualize e exclua EventBridge regras em seu nome.

  • ssm— Leia os parâmetros do Parameter Store ao usar um parâmetro do Systems Manager como alias para uma ID de AMI em um modelo de execução.

  • vpc-lattice— Registre e cancele o registro de instâncias com o VPC Lattice e verifique a integridade dos alvos registrados.

Criar uma função vinculada ao serviço (automática)

O Amazon EC2 Auto Scaling cria a função vinculada ao serviço AWSServiceRoleForAutoScaling para você na primeira vez que você cria um grupo do Auto Scaling, a menos que você crie manualmente uma função vinculada ao serviço com sufixo personalizado e especifique-a ao criar o grupo.

Importante

Você deve ter permissões do IAM para criar a função vinculada ao serviço. Caso contrário, a criação automática falhará. Para obter mais informações, consulte Permissões de função vinculada ao serviço no Manual do usuário do IAM e Criar um perfil vinculado ao serviço neste guia.

O Amazon EC2 Auto Scaling começou a oferecer suporte a funções vinculadas ao serviço em março de 2018. Se você criou um grupo do Auto Scaling antes disso, o Amazon EC2 Auto Scaling criou a função AWSServiceRoleForAutoScaling em sua conta. Para obter mais informações, consulte Uma nova função surgiu em minha Conta da AWS no Manual do usuário do IAM.

Criar uma função vinculada ao serviço (manual)

Para criar uma função vinculada ao serviço (console)
  1. Abra o console do IAM em https://console.aws.amazon.com/iam/.

  2. No painel de navegação, escolha Roles e depois Create Role.

  3. Em Select trusted entity (Selecionar entidade confiável), escolha AWS service (serviço).

  4. Em Choose the service that will use this role (Escolha o serviço que usará essa função), escolha EC2 Auto Scaling (Auto Scaling do EC2) e o caso de uso EC2 Auto Scaling (Auto Scaling do EC2) .

  5. Escolha Next: Permissions (Próximo: permissões), Next: Tags (Próximo: tags) e Next: Review (Próximo: revisão). Observação: você não pode anexar tags a funções vinculadas ao serviço durante a criação.

  6. Na página Review (Revisão), deixe em branco Role name (Nome da função) para criar uma função vinculada ao serviço com o nome AWSServiceRoleForAutoScaling ou insira um sufixo para criar uma função vinculada ao serviço com o nome AWSServiceRoleForAutoScaling_sufixo.

  7. (Opcional) Em Role description (Descrição da função), edite a descrição para a função vinculada ao serviço.

  8. Selecione Criar função.

Para criar uma função vinculada a serviço (AWS CLI)

Use o seguinte comando da create-service-linked-roleCLI para criar uma função vinculada ao serviço para o Amazon EC2 Auto Scaling com o sufixo nome _. AWSServiceRoleForAutoScaling

aws iam create-service-linked-role --aws-service-name autoscaling.amazonaws.com --custom-suffix suffix

A saída desse comando inclui o ARN da função vinculada ao serviço, o qual você pode usar para conceder acesso à chave gerenciada pelo cliente para a função vinculada ao serviço.

{ "Role": { "RoleId": "ABCDEF0123456789ABCDEF", "CreateDate": "2018-08-30T21:59:18Z", "RoleName": "AWSServiceRoleForAutoScaling_suffix", "Arn": "arn:aws:iam::123456789012:role/aws-service-role/autoscaling.amazonaws.com/AWSServiceRoleForAutoScaling_suffix", "Path": "/aws-service-role/autoscaling.amazonaws.com/", "AssumeRolePolicyDocument": { "Version": "2012-10-17", "Statement": [ { "Action": [ "sts:AssumeRole" ], "Principal": { "Service": [ "autoscaling.amazonaws.com" ] }, "Effect": "Allow" } ] } } }

Para obter mais informações, consulte Criação de uma função vinculada ao serviço no Manual do usuário do IAM.

Editar a função vinculada ao serviço

Você não pode editar as funções vinculadas ao serviço criadas para o Amazon EC2 Auto Scaling. Depois de criar uma função vinculada ao serviço, você não pode alterar o nome da função ou suas permissões. No entanto, você poderá editar a descrição da função. Para obter mais informações, consulte Editar uma função vinculada a serviço no Manual do usuário do IAM.

Excluir a função vinculada ao serviço

Se você não estiver usando um grupo do Auto Scaling, recomendamos excluir a função vinculada ao serviço. Excluir a função evita que você tenha uma entidade que não é usada ou mantida e monitorada ativamente.

Você poderá excluir uma função vinculada ao serviço somente depois de excluir os recursos dependentes relacionados. Isso evita que você revogue acidentalmente as permissões do Amazon EC2 Auto Scaling para seus recursos. Se uma função vinculada ao serviço é usada com vários grupos do Auto Scaling, você deve excluir todos os grupos do Auto Scaling que usam a função vinculada ao serviço antes de excluí-la. Para ter mais informações, consulte Excluir infraestrutura do Auto Scaling.

É possível usar o IAM para excluir uma função vinculada ao serviço. Para obter mais informações, consulte Excluir um perfil vinculado ao serviço no Guia do usuário do IAM.

Se você excluir a função vinculada ao serviço AWSServiceRoleForAutoScaling, o Amazon EC2 Auto Scaling criará a função novamente quando você criar um grupo do Auto Scaling sem especificar outra função vinculada ao serviço.

Regiões compatíveis com funções vinculadas ao serviço do Amazon EC2 Auto Scaling

O Amazon EC2 Auto Scaling oferece suporte ao uso de funções vinculadas a serviços em todos os lugares em que Regiões da AWS o serviço está disponível.