Perfil do IAM da infraestrutura do Amazon ECS para balanceadores de carga - Amazon Elastic Container Service

Perfil do IAM da infraestrutura do Amazon ECS para balanceadores de carga

Um perfil do IAM de infraestrutura do Amazon ECS para balanceadores de carga permite que o Amazon ECS gerencie recursos de balanceadores de carga nos clusters em seu nome, sendo usado quando:

  • Você deseja usar implantações azul/verde com o Amazon ECS. O perfil de infraestrutura permite que o Amazon ECS gerencie recursos de balanceadores de carga das suas implantações.

  • Você precisa do Amazon ECS para criar, modificar ou excluir recursos de balanceadores de carga, como grupos de destino e receptores, durante as operações de implantação.

Quando o Amazon ECS assume esse perfil para realizar ações em seu nome, os eventos ficam visíveis no AWS CloudTrail. Se o Amazon ECS usar o perfil para gerenciar recursos de balanceadores de carga para as implantações azul/verde, o log roleSessionName do CloudTrail será ECSNetworkingWithELB ou ecs-service-scheduler. Você pode usar esse nome para pesquisar eventos no console do CloudTrail filtrando pelo Nome de usuário.

O Amazon ECS fornece uma política gerenciada que contém as permissões necessárias para o gerenciamento de balanceadores de carga. Para obter mais informações, consulte AmazonECSInfrastructureRolePolicyForLoadBalancers no Guia de referência de políticas gerenciadas pela AWS.

Criação do perfil de infraestrutura do Amazon ECS para balanceadores de carga

Substitua cada entrada do usuário por suas próprias informações.

  1. Crie um arquivo denominado ecs-infrastructure-trust-policy.json que contenha a política de confiança a ser usada para a função do IAM. O arquivo deve conter o seguinte:

    JSON
    { "Version": "2012-10-17", "Statement": [ { "Sid": "AllowAccessToECSForInfrastructureManagement", "Effect": "Allow", "Principal": { "Service": "ecs.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
  2. Use o comando da AWS CLI a seguir para criar um perfil denominado ecsInfrastructureRoleForLoadBalancers usando a política de confiança criada na etapa anterior.

    aws iam create-role \ --role-name ecsInfrastructureRoleForLoadBalancers \ --assume-role-policy-document file://ecs-infrastructure-trust-policy.json
  3. Anexe a política AmazonECSInfrastructureRolePolicyForLoadBalancers gerenciada pela AWS à funçãoecsInfrastructureRoleForLoadBalancers.

    aws iam attach-role-policy \ --role-name ecsInfrastructureRoleForLoadBalancers \ --policy-arn arn:aws:iam::aws:policy/AmazonECSInfrastructureRolePolicyForLoadBalancers

Você também pode usar o fluxo de trabalho da Política de confiança personalizada do console do IAM para criar o perfil. Para obter mais informações, consulte Criar um perfil usando políticas de confiança personalizadas (console) no Guia do usuário do IAM.

Importante

Se o perfil de infraestrutura estiver sendo usada pelo Amazon ECS para gerenciar recursos de balanceadores de carga de suas implantações azul/verde, verifique o seguinte antes de excluir ou modificar o perfil:

  • O perfil não é excluído enquanto as implantações ativas estão em andamento.

  • A política de confiança do perfil não foi modificada para remover o acesso ao Amazon ECS (ecs.amazonaws.com).

  • A política gerenciada AmazonECSInfrastructureRolePolicyForLoadBalancers não é removida enquanto as implantações ativas estão em andamento.

Excluir ou modificar o perfil durante as implantações azul/verde ativas pode resultar em falhas de implantação e deixar seus serviços em um estado inconsistente.

Depois de criar o arquivo, você deverá conceder ao usuário permissão para passar o perfil para o Amazon ECS.

Permissão para passar o perfil de infraestrutura para o Amazon ECS

Para usar um perfil do IAM de infraestrutura do ECS para balanceadores de carga, você deve conceder permissão ao usuário para passar o perfil para o Amazon ECS. Anexe a permissão iam:PassRole a seguir ao usuário. Substitua ecsInfrastructureRoleForLoadBalancers pelo nome do perfil de infraestrutura que você criou.

JSON
{ "Version": "2012-10-17", "Statement": [ { "Action": "iam:PassRole", "Effect": "Allow", "Resource": ["arn:aws:iam::*:role/ecsInfrastructureRoleForLoadBalancers"], "Condition": { "StringEquals": {"iam:PassedToService": "ecs.amazonaws.com"} } } ] }

Para obter mais informações sobre iam:Passrole e as atualizações das permissões de usuário, consulte Conceder permissões a um usuário para passar um perfil para um serviço da AWS e Alteração de permissões de um usuário do IAM no Guia do usuário do AWS Identity and Access Management.