Como o Amazon Elastic Container Service funciona com o IAM - Amazon Elastic Container Service

Como o Amazon Elastic Container Service funciona com o IAM

Antes de usar o IAM para gerenciar o acesso ao Amazon ECS, entenda que recursos do IAM estão disponíveis para uso com o Amazon ECS.

Para obter uma visualização de alto nível de como o Amazon ECS e outros serviços da AWS funcionam com a maioria dos recursos do IAM, consulte Serviços da AWS compatíveis com o IAM no Guia do usuário do IAM.

Políticas baseadas em identidade do Amazon ECS

Suporte a políticas baseadas em identidades: sim

As políticas baseadas em identidade são documentos de políticas de permissões JSON que você pode anexar a uma identidade, como usuário, grupo de usuários ou perfil do IAM. Essas políticas controlam quais ações os usuários e perfis podem realizar, em quais recursos e em que condições. Para aprender a criar uma política baseada em identidade, consulte Defina permissões personalizadas do IAM com políticas gerenciadas pelo cliente no Guia do usuário do IAM.

Com as políticas baseadas em identidade do IAM, é possível especificar ações ou recursos permitidos ou negados, assim como as condições sob as quais as ações são permitidas ou negadas. Você não pode especificar a entidade principal em uma política baseada em identidade porque ela se aplica ao usuário ou perfil ao qual ela está anexada. Para saber mais sobre todos os elementos que podem ser usados em uma política JSON, consulte Referência de elementos da política JSON do IAM no Guia do usuário do IAM.

Exemplos de políticas baseadas em identidade para o Amazon ECS

Para visualizar exemplos de políticas baseadas em identidade do Amazon ECS, consulte Exemplos de políticas baseadas em identidade do Amazon Elastic Container Service.

Políticas baseadas em recursos do Amazon ECS

Suporte a políticas baseadas em recursos: não

Políticas baseadas em recursos são documentos de políticas JSON que você anexa a um recurso. São exemplos de políticas baseadas em recursos as políticas de confiança de perfil do IAM e as políticas de bucket do Amazon S3. Em serviços que suportem políticas baseadas em recursos, os administradores de serviço podem usá-las para controlar o acesso a um recurso específico. Para o recurso ao qual a política está anexada, a política define quais ações um principal especificado pode executar nesse recurso e em que condições. Você deve especificar uma entidade principal em uma política baseada em recursos. As entidades principais podem incluir contas, usuários, perfis, usuários federados ou Serviços da AWS.

Para permitir o acesso entre contas, você pode especificar uma conta inteira ou as entidades do IAM em outra conta como a entidade principal em uma política baseada em recursos. Adicionar uma entidade principal entre contas à política baseada em recurso é apenas metade da tarefa de estabelecimento da relação de confiança. Quando a entidade principal e o recurso estão em diferentes Contas da AWS, um administrador do IAM da conta confiável também deve conceder à entidade principal (usuário ou perfil) permissão para acessar o recurso. Eles concedem permissão ao anexar uma política baseada em identidade para a entidade. No entanto, se uma política baseada em recurso conceder acesso a uma entidade principal na mesma conta, nenhuma política baseada em identidade adicional será necessária. Consulte mais informações em Acesso a recursos entre contas no IAM no Guia do usuário do IAM.

Ações de políticas para o Amazon ECS

Suporte a ações de políticas: sim

Os administradores podem usar AWS as políticas JSON para especificar quem tem acesso a quê. Ou seja, qual entidade principal pode executar ações em quais recursos, e em que condições.

O elemento Action de uma política JSON descreve as ações que podem ser usadas para permitir ou negar acesso em uma política. As ações de políticas geralmente têm o mesmo nome que a operação de API da AWS associada. Existem algumas exceções, como ações somente de permissão, que não têm uma operação de API correspondente. Algumas operações também exigem várias ações em uma política. Essas ações adicionais são chamadas de ações dependentes.

Incluem ações em uma política para conceder permissões para executar a operação associada.

Para ver uma lista das ações do Amazon ECS, consulte Ações definidas pelo Amazon Elastic Conteiner Service na Referência de autorização de serviço.

As ações de política no Amazon ECS usam o seguinte prefixo antes da ação:

ecs

Para especificar várias ações em uma única instrução, separe-as com vírgulas.

"Action": [ "ecs:action1", "ecs:action2" ]

Você também pode especificar várias ações usando caracteres-curinga (*). Por exemplo, para especificar todas as ações que começam com a palavra Describe, inclua a seguinte ação:

"Action": "ecs:Describe*"

Para visualizar exemplos de políticas baseadas em identidade do Amazon ECS, consulte Exemplos de políticas baseadas em identidade do Amazon Elastic Container Service.

Recursos de políticas para o Amazon ECS

Suporte a recursos de políticas: parcial

Os administradores podem usar AWS as políticas JSON para especificar quem tem acesso a quê. Ou seja, qual entidade principal pode executar ações em quais recursos, e em que condições.

O elemento de política JSON Resource especifica o objeto ou os objetos aos quais a ação se aplica. As instruções devem incluir um elemento Resource ou NotResource. Como prática recomendada, especifique um recurso usando seu nome do recurso da Amazon (ARN). Isso pode ser feito para ações que oferecem compatibilidade com um tipo de recurso específico, conhecido como permissões em nível de recurso.

Para ações que não oferecem compatibilidade com permissões em nível de recurso, como operações de listagem, use um curinga (*) para indicar que a instrução se aplica a todos os recursos.

"Resource": "*"

Para ver uma lista dos tipos de recursos do Amazon ECS e seus ARNs, consulte Recursos definidos pelo Amazon Elastic Conteiner Service na Referência de autorização de serviço. Para saber com quais ações você pode especificar o ARN de cada recurso, consulte Ações definidas pelo Amazon Elastic Container Service.

Algumas ações da API do Amazon ECS oferecem suporte a vários recursos. Por exemplo, é possível fazer referência a vários clusters ao chamar a ação de API DescribeClusters. Para especificar vários recursos em uma única instrução, separe os ARNs com vírgulas.

"Resource": [ "EXAMPLE-RESOURCE-1", "EXAMPLE-RESOURCE-2"

Por exemplo, o recurso de cluster do Amazon ECS tem o seguinte ARN:

arn:${Partition}:ecs:${Region}:${Account}:cluster/${clusterName}

Para especificar os clusters my-cluster-1 e my-cluster-2 em sua instrução, use os seguintes ARNs:

"Resource": [ "arn:aws:ecs:us-east-1:123456789012:cluster/my-cluster-1", "arn:aws:ecs:us-east-1:123456789012:cluster/my-cluster-2"

Para especificar todos os clusters que pertencem a uma conta específica, use o caractere curinga (*):

"Resource": "arn:aws:ecs:us-east-1:123456789012:cluster/*"

Para definições de tarefa, você pode especificar a revisão mais recente ou uma revisão específica.

Para especificar todas as revisões da definição de tarefa, use o caractere curinga (*):

"Resource:arn:${Partition}:ecs:${Region}:${Account}:task-definition/${TaskDefinitionFamilyName}:*"

Para especificar uma revisão de definição de tarefa específica, use ${TaskDefinitionRevisionNumber}:

"Resource:arn:${Partition}:ecs:${Region}:${Account}:task-definition/${TaskDefinitionFamilyName}:${TaskDefinitionRevisionNumber}"

Para visualizar exemplos de políticas baseadas em identidade do Amazon ECS, consulte Exemplos de políticas baseadas em identidade do Amazon Elastic Container Service.

Chaves de condição de políticas para o Amazon ECS

Suporte a chaves de condição de políticas específicas do serviço: sim

Os administradores podem usar AWS as políticas JSON para especificar quem tem acesso a quê. Ou seja, qual entidade principal pode executar ações em quais recursos, e em que condições.

O elemento Condition (ou bloco Condition) permite que você especifique condições nas quais uma instrução estiver em vigor. O elemento Condition é opcional. É possível criar expressões condicionais que usem agentes de condição, como “igual a” ou “menor que”, para fazer a condição da política corresponder aos valores na solicitação.

Se você especificar vários elementos Condition em uma instrução ou várias chaves em um único Condition elemento, a AWS os avaliará usando uma operação lógica AND. Se você especificar vários valores para uma única chave de condição, a AWS avaliará a condição usando uma operação lógica OR. Todas as condições devem ser atendidas antes que as permissões da instrução sejam concedidas.

Você também pode usar variáveis de espaço reservado ao especificar condições. Por exemplo, é possível conceder a um usuário do IAM permissão para acessar um recurso somente se ele estiver marcado com seu nome de usuário do IAM. Para obter mais informações, consulte Elementos da política do IAM: variáveis e tags no Guia do usuário do IAM.

A AWS oferece compatibilidade com chaves de condição globais e chaves de condição específicas do serviço. Para ver todas as chaves de condição globais da AWS, consulte Chaves de contexto de condição globais da AWS no Guia do usuário do IAM.

O Amazon ECS oferece suporte às seguintes chaves de condição específicas ao serviço que você pode usar para fornecer filtragem refinada para suas políticas do IAM:

Chave de condição Descrição Tipos de avaliação

aws:RequestTag/${TagKey}

Essa chave de contexto é formatada "aws:RequestTag/tag-key":"tag-value" em que tag-key e tag-value são um par de chave e valor da tag.

Verifica se o par de chave/valor da tag está presente em uma solicitação da AWS. Por exemplo, você pode verificar que a solicitação inclui a chave de tag "Dept" e se ela tem o valor "Accounting".

String

aws:ResourceTag/${TagKey}

Essa chave de contexto é formatada "aws:ResourceTag/tag-key":"tag-value" em que tag-key e tag-value são um par de chave e valor da tag.

Verifica se a tag anexada ao recurso de identidade (usuário ou função) corresponde ao nome e ao valor da chave especificada.

String

aws:TagKeys

Essa chave de contexto é formatada como "aws:TagKeys":"tag-key", onde tag-key é uma lista de chaves de tags sem valores (por exemplo, ["Dept","Cost-Center"]).

Verifica as chaves de tags que estão presentes em uma solicitação da AWS.

String

ecs:ResourceTag/${TagKey}

Essa chave de contexto é formatada "ecs:ResourceTag/tag-key":"tag-value" em que tag-key e tag-value são um par de chave e valor da tag.

Verifica se a tag anexada ao recurso de identidade (usuário ou função) corresponde ao nome e ao valor da chave especificada.

String

ecs:cluster

A chave de contexto é formatada como "ecs:cluster":"cluster-arn", em que cluster-arn é o ARN do cluster do Amazon ECS.

ARN, nulo

ecs:container-instances

A chave de contexto é formatada "ecs:container-instances":"container-instance-arns" em que container-instance-arns é um ou mais ARNs de instância de contêiner.

ARN, nulo

ecs:container-name

A chave de contexto está formatada como "ecs:container-name":"container-name", onde conteiner-instance- é o nome de um contêiner do Amazon ECS especificado na definição da tarefa.

String
ecs:enable-execute-command A chave de contexto está formatada como "ecs:enable-execute-command":"value", onde value- é ”true“ ou ”false“. String

ecs:enable-service-connect

A chave de contexto está formatada como "ecs:enable-service-connect":"value", em que value é "true" ou "false".

String

ecs:enable-ebs-volumes

A chave de contexto está formatada como "ecs:enable-ebs-volumes":"value", em que value é "true" ou "false".

String

ecs:namespace

A chave de contexto é formatada como "ecs:namespace":"namespace-arn", em que namespace-arn é o ARN para o namespace do AWS Cloud Map.

ARN, nulo

ecs:service

A chave de contexto é formatada como "ecs:service":"service-arn", em que service-arn é o ARN para o serviço do Amazon ECS.

ARN, nulo

ecs:task-definition

A chave de contexto é formatada como "ecs:task-definition":"task-definition-arn", em que task-definition-arn é o ARN da definição de tarefa do Amazon ECS.

ARN, nulo

ecs:account-setting

A chave de contexto é formatada como "ecs:account-setting":"account-setting", onde configuração da conta é o nome de uma configuração de conta do Amazon ECS.

String

Para ver uma lista de chaves de condição do Amazon ECS, consulte Chaves de condição para o Amazon Elastic Conteiner Service na Referência de autorização de serviço. Para saber com quais ações e recursos você pode usar a chave de condição, consulte Ações definidas pelo Amazon Elastic Container Service.

Para visualizar exemplos de políticas baseadas em identidade do Amazon ECS, consulte Exemplos de políticas baseadas em identidade do Amazon Elastic Container Service.

Listas de controle de acesso (ACLs) no Amazon ECS

Suporte a ACLs: não

As listas de controle de acesso (ACLs) controlam quais entidades principais (membros, usuários ou perfis da conta) têm permissões para acessar um recurso. As ACLs são semelhantes às políticas baseadas em recursos, embora não usem o formato de documento de política JSON.

Controle de acesso baseado em atributos (ABAC) com o Amazon ECS

Importante

O Amazon ECS oferece suporte ao controle de acesso baseado em atributos para todos os recursos do Amazon ECS. Para determinar se é possível usar atributos para definir o escopo de uma ação, use a tabela Ações definidas pelo Amazon ECS em Referência da autorização de serviço. Primeiro, verifique se há um recurso na coluna Recurso. Em seguida, use a coluna Chaves de condição para ver as chaves da combinação de ação/recurso.

Suporte a ABAC (tags em políticas): sim

O controle de acesso por atributo (ABAC) é uma estratégia de autorização que define permissões com base em atributos. Na AWS, esses atributos são chamados de tags. É possível anexar tags a entidades do IAM (usuários ou perfis) e a muitos recursos da AWS. A marcação de entidades e recursos é a primeira etapa do ABAC. Em seguida, você cria políticas de ABAC para permitir operações quando a tag da entidade principal corresponder à tag do recurso que ela estiver tentando acessar.

O ABAC é útil em ambientes que estão crescendo rapidamente e ajuda em situações onde o gerenciamento de políticas se torna um problema.

Para controlar o acesso baseado em tags, forneça informações sobre as tags no elemento de condição de uma política usando as aws:ResourceTag/key-name, aws:RequestTag/key-name ou chaves de condição aws:TagKeys.

Se um serviço oferecer suporte às três chaves de condição para cada tipo de recurso, o valor será Sim para o serviço. Se um serviço oferecer suporte às três chaves de condição somente para alguns tipos de recursos, o valor será Parcial

Para obter mais informações sobre o ABAC, consulte Definir permissões com autorização ABAC no Guia do usuário do IAM. Para visualizar um tutorial com etapas para configurar o ABAC, consulte Utilizar controle de acesso por atributos (ABAC) no Guia do usuário do IAM.

Para obter mais informações sobre recursos de marcação do Amazon ECS, consulte Marcação de recursos do Amazon ECS.

Para visualizar um exemplo de política baseada em identidade para limitar o acesso a um recurso baseado em tags desse recurso, consulte Descrever serviços do Amazon ECS com base em etiquetas.

Uso de credenciais temporárias com o Amazon ECS

Suporte a credenciais temporárias: sim

Alguns Serviços da AWS não funcionam quando você faz login usando credenciais temporárias. Para obter informações adicionais, como quais Serviços da AWS funcionam com credenciais temporárias, consulte Serviços da AWS que funcionam com o IAM no Guia do usuário do IAM.

Você está usando credenciais temporárias se fizer login no AWS Management Console por qualquer método, exceto nome de usuário e uma senha. Por exemplo, quando você acessa a AWS usando o link de autenticação única (SSO) da sua empresa, esse processo cria credenciais temporárias automaticamente. Você também cria automaticamente credenciais temporárias quando faz login no console como usuário e, em seguida, alterna perfis. Para obter mais informações sobre como alternar perfis, consulte Mudar de um usuário para um perfil do IAM (console) no Guia do usuário do IAM.

Você pode criar credenciais temporárias manualmente usando a API AWS CLI ou AWS. Em seguida, essas credenciais temporárias podem ser usadas para acessar a AWS .A AWS recomenda gerar credenciais temporárias dinamicamente em vez de usar chaves de acesso de longo prazo. Para obter mais informações, consulte Credenciais de segurança temporárias no IAM.

Sessões de acesso direto para o Amazon ECS

Suporte ao recurso de encaminhamento de sessões de acesso (FAS): sim

Quando você usa um usuário ou um perfil do IAM para executar ações na AWS, você é considerado uma entidade principal. Ao usar alguns serviços, você pode executar uma ação que inicia outra ação em um serviço diferente. O recurso FAS utiliza as permissões da entidade principal que chama um AWS service (Serviço da AWS), combinadas às permissões do AWS service (Serviço da AWS) solicitante, para realizar solicitações para serviços downstream. As solicitações de FAS só são feitas quando um serviço recebe uma solicitação que exige interações com outros Serviços da AWS ou com recursos para serem concluídas. Nesse caso, você precisa ter permissões para executar ambas as ações. Para obter detalhes da política ao fazer solicitações de FAS, consulte Encaminhar sessões de acesso.

Funções de serviço para o Amazon ECS

Suporte a perfis de serviço: sim

O perfil de serviço é um perfil do IAM que um serviço assume para realizar ações em seu nome. Um administrador do IAM pode criar, modificar e excluir um perfil de serviço do IAM. Para obter mais informações, consulte Criar um perfil para delegar permissões a um AWS service (Serviço da AWS) no Guia do usuário do IAM.

Atenção

A alteração das permissões de uma função de serviço pode interromper a funcionalidade do Amazon ECS. Edite funções de serviço somente quando o Amazon ECS fornecer orientação para isso.

Funções vinculadas ao serviço para o Amazon ECS

Suporte a perfis vinculados a serviços: sim

Um perfil vinculado ao serviço é um tipo de perfil de serviço vinculado a um AWS service (Serviço da AWS). O serviço pode presumir a função de executar uma ação em seu nome. Os perfis vinculados ao serviço aparecem em sua Conta da AWS e pertencem ao serviço. Um administrador do IAM pode visualizar, mas não editar as permissões para perfis vinculados ao serviço.

Para obter detalhes sobre como criar ou gerenciar funções vinculadas ao serviço do Amazon ECS, consulte Uso de perfis vinculados ao serviço para o Amazon ECS.