

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á.

# Repositórios privados do Amazon ECR
<a name="Repositories"></a>

Um repositório privado do Amazon ECR contém as imagens do Docker, as imagens do Open Container Initiative (OCI) e os artefatos do OCI compatíveis. Você pode criar, monitorar e excluir repositórios de imagens e definir permissões que controlam quem pode acessá-los usando operações de API do Amazon ECR ou a seção **Repositórios** do console do Amazon ECR. O Amazon ECR também se integra à CLI do Docker para que você envie por push e extraia imagens dos ambientes de desenvolvimento para os repositórios.

**Topics**
+ [

## Conceitos de repositório privado
](#repository-concepts)
+ [

# Criar um repositório privado do Amazon ECR para armazenar imagens
](repository-create.md)
+ [

# Visualizar o conteúdo e os detalhes de um repositório privado no Amazon ECR
](repository-info.md)
+ [

# Excluir um repositório privado do Amazon ECR
](repository-delete.md)
+ [

# Políticas de repositório privado no Amazon ECR
](repository-policies.md)
+ [

# Marcar um repositório privado no Amazon ECR
](ecr-using-tags.md)

## Conceitos de repositório privado
<a name="repository-concepts"></a>
+ Por padrão, sua conta tem acesso de leitura e gravação aos repositórios no seu registro padrão (`aws_account_id.dkr.ecr.region.amazonaws.com`). No entanto, os usuários precisam de permissões para fazer chamadas para o Amazon ECR APIs e enviar ou extrair imagens de e para seus repositórios. O Amazon ECR fornece várias políticas gerenciadas da para controlar o acesso do usuário em diversos níveis. Para obter mais informações, consulte [Exemplos de políticas baseadas em identidade do Amazon Elastic Container Registry](security_iam_id-based-policy-examples.md).
+ Os repositórios podem ser controlados com políticas de acesso de usuários do e políticas de repositório individuais. Para obter mais informações, consulte [Políticas de repositório privado no Amazon ECR](repository-policies.md).
+ Os nomes de repositório podem oferecer suporte a namespaces, que você pode usar para agrupar repositórios semelhantes. Por exemplo, se houver diversas equipes usando o mesmo registro, a Equipe A poderia usar o namespace `team-a`, e a Equipe B poderia usar o namespace `team-b`. Ao fazer isso, cada equipe tem sua própria imagem chamada `web-app` com cada imagem prefaciada com o namespace da equipe. Essa configuração permite que essas imagens em cada equipe sejam usadas simultaneamente sem interferência. A imagem da Equipe A é `team-a/web-app`, e a imagem da Equipe B é `team-b/web-app`.
+ Suas imagens podem ser replicadas para outros repositórios nas regiões em seu próprio registro e em todas as contas. Você pode fazer isso especificando uma configuração de replicação nas configurações do Registro. Para obter mais informações, consulte [Configurações de registro privado no Amazon ECR](registry-settings.md).
+ Quando a montagem de blobs está habilitada no nível do registro, os repositórios podem compartilhar camadas de imagem comuns.

# Criar um repositório privado do Amazon ECR para armazenar imagens
<a name="repository-create"></a>

**Importante**  
A criptografia de camada dupla do lado do servidor com AWS KMS (DSSE-KMS) só está disponível nas regiões. AWS GovCloud (US) 

Crie um repositório privado do Amazon ECR e, em seguida, use o repositório para armazenar as imagens de contêineres. Siga estas etapas para criar um repositório privado usando o Console de gerenciamento da AWS.

**Como criar um repositório (Console de gerenciamento da AWS)**

1. Abra o console do Amazon ECR nos [https://console.aws.amazon.com/ecr/repositórios](https://console.aws.amazon.com/ecr/repositories).

1. Na barra de navegação, selecione a região na qual criará o seu repositório.

1. Selecione **Repositórios privados** e depois **Criar repositório**.

1. Em **Repository name (Nome do repositório)**, insira um nome exclusivo para o repositório. O nome do repositório pode ser especificado isoladamente (por exemplo, `nginx-web-app`). Como alternativa, pode ter como prefixo um namespace para agrupar o repositório em uma categoria (por exemplo `project-a/nginx-web-app`).
**nota**  
O nome do repositório pode conter até `256` caracteres. O nome de repositório deve começar com uma letra e só pode conter letras minúsculas, números, hifens, sublinhados, pontos e barras. O uso de uma barra dupla não é suportado.

1. Para **Mutabilidade de tag de imagem**, escolha uma das configurações de mutabilidade de tag a seguir para o repositório.
   + **Mutável** – Escolha essa opção se quiser que as tags de imagem sejam sobrescritas. É recomendada para repositórios que usam ações de cache de pull-through para garantir que o Amazon ECR possa atualizar imagens armazenadas em cache. Além disso, para desabilitar as atualizações de tag para algumas tags mutáveis, insira os nomes das tags ou use curingas (\$1) para combinar várias tags semelhantes na caixa de texto **Exclusão de tag mutável**.
   + **Imutável** – Selecione esta opção se quiser impedir que as tags de imagem sejam sobrescritas. Isso se aplica a todas as tags e exclusões no repositório ao enviar uma imagem com uma tag existente. O Amazon ECR retorna uma `ImageTagAlreadyExistsException` se você tentar enviar uma imagem com uma tag existente. Além disso, para habilitar as atualizações de tag para algumas tags imutáveis, insira os nomes das tags ou use curingas (\$1) para combinar várias tags semelhantes na caixa de texto **Exclusão de tag imutável**. 
**nota**  
As configurações de mutabilidade de tags individuais não são suportadas.

1. Para **configuração de criptografia**, escolha entre **AES-256** ou. ** AWS KMS** Para obter mais informações, consulte [Criptografia em repouso](encryption-at-rest.md).

   1.  Se AWS KMS for escolhido, escolha entre criptografia de camada única e criptografia de camada dupla. Há cobranças adicionais pelo uso da AWS KMS criptografia de camada dupla. Para obter mais informações, consulte [Preços do serviço do Amazon ECR](https://aws.amazon.com/ecr/pricing/).

   1. Por padrão, a chave AWS gerenciada com o alias `aws/ecr` é escolhida. Essa chave é criada na sua conta na primeira vez que você cria um repositório com a AWS KMS criptografia ativada. Selecione **Chave gerenciada pelo cliente (avançado)** para escolher sua própria chave do AWS KMS . A AWS KMS chave deve estar na mesma região do cluster. Selecione **Criar uma AWS KMS chave** para navegar até o AWS KMS console e criar sua própria chave.

1. Em **Configurações de verificação de imagens**, embora você possa especificar as configurações de verificação no repositório para uma verificação básica, é prática recomendada especificar a configuração de verificação no registro privado. Definir as configurações de verificação no nível do registro privado permite escolher entre verificação aprimorada ou verificação básica, e também permite definir filtros para especificar quais repositórios devem ser verificados.

1. Escolha **Criar**.

**Como criar um repositório (AWS CLI)**

1. Você pode criar um repositório usando o **aws ecr create-repository** comando AWS CLI with the.

   ```
   aws ecr create-repository \
               --repository-name hello-repository \
               --region region
   ```

1. Se você tiver um modelo de criação de repositório definido, poderá criar um repositório enviando sua imagem usando comandos push familiares do Amazon ECR com o nome do repositório desejado. O Amazon ECR criará automaticamente o repositório para você usando as configurações predefinidas do seu modelo de criação de repositório. Se você ainda não tiver um modelo de criação de repositório definido, sua solicitação para o repositório de imagens inexistente falhará.

   ```
   docker push aws_account_id.dkr.ecr.region.amazonaws.com/prefix/my-new-repository:tag
   ```

## Próximas etapas
<a name="procedure_next_steps"></a>

Para ver as etapas de como enviar por push uma imagem para o repositório, selecione o repositório e escolha **Exibir comandos de push**. Para obter mais informações sobre como enviar uma imagem para seu repositório, consulte [Enviar por push uma imagem para um repositório privado do Amazon ECR](image-push.md).

# Visualizar o conteúdo e os detalhes de um repositório privado no Amazon ECR
<a name="repository-info"></a>

Depois de criar um repositório privado, você pode ver os detalhes sobre ele no Console de gerenciamento da AWS:
+ Quais imagens são armazenadas em um repositório
+ Detalhes sobre cada imagem armazenada no repositório, incluindo o tamanho e o resumo SHA para cada imagem
+ A frequência de verificação especificada para o conteúdo do repositório
+ Se o repositório tem uma regra de cache pull-through ativa associada a ele
+ A configuração de criptografia para o repositório

**nota**  
A partir do Docker versão 1.9, o cliente do Docker compacta camadas das imagens antes de enviá-las a um registro do Docker V2. A saída do comando **docker images** mostra o tamanho da imagem descompactada. Portanto, lembre-se de que o Docker pode retornar uma imagem maior do que a imagem mostrada no Console de gerenciamento da AWS.

**Para visualizar as informações do repositório (Console de gerenciamento da AWS)**

1. Abra o console do Amazon ECR nos [https://console.aws.amazon.com/ecr/repositórios](https://console.aws.amazon.com/ecr/repositories).

1. Na barra de navegação, selecione a região que contém o repositório a ser visualizado.

1. No painel de navegação, escolha **Repositories (Repositórios)**.

1. Na página **Repositories** (Repositórios), escolha a guia **Private** (Privado) e depois o repositório a ser visualizado.

1. Na página de detalhes do repositório, o console usa como padrão a visualização **Images** (imagens). Use o menu de navegação para visualizar outras informações sobre o repositório.
   + Selecione **Summary** (Resumo) para visualizar detalhes do repositório e os dados de contagem de extrações do repositório.
   + Escolha **Images** (Imagens) para visualizar informações sobre etiquetas de imagens no repositório. Para visualizar mais informações sobre a imagem, selecione a etiqueta da imagem. Para obter mais informações, consulte [Visualizar os detalhes da imagem no Amazon ECR](image-info.md).

     Se houver imagens não marcadas que você deseja excluir, você pode selecionar a caixa à esquerda dos repositórios a serem excluídos e escolha **Delete (Excluir)**. Para obter mais informações, consulte [Excluir uma imagem no Amazon ECR](delete_image.md).
   + Escolha **Permissões** para visualizar as políticas de repositório aplicadas ao repositório. Para obter mais informações, consulte [Políticas de repositório privado no Amazon ECR](repository-policies.md).
   + Escolha **Política de ciclo de vida** para visualizar as regras de política de ciclo de vida que são aplicadas ao repositório. O histórico de eventos de ciclo de vida também são exibidos aqui. Para obter mais informações, consulte [Automatizar a limpeza de imagens usando políticas de ciclo de vida no Amazon ECR](LifecyclePolicies.md).
   + Selecione **Tags** para visualizar as tags de metadados que são aplicadas ao repositório.

# Excluir um repositório privado do Amazon ECR
<a name="repository-delete"></a>

Se você já terminou de usar um repositório, pode excluí-lo. Quando você exclui um repositório no Console de gerenciamento da AWS, todas as imagens contidas no repositório também são excluídas; isso não pode ser desfeito.

**Importante**  
As imagens nos repositórios excluídos também são excluídas. Você não pode desfazer esta operação.

**Para excluir um repositório (Console de gerenciamento da AWS)**

1. Abra o console do Amazon ECR nos [https://console.aws.amazon.com/ecr/repositórios](https://console.aws.amazon.com/ecr/repositories).

1. Na barra de navegação, selecione a região que contém o repositório a ser excluído.

1. No painel de navegação, escolha **Repositories (Repositórios)**.

1. Na página **Repositories** (Repositórios), escolha a guia **Private** (Privado), depois selecione o repositório a excluir e escolha **Delete** (Excluir).

1. Na *repository\$1name* janela **Excluir**, verifique se os repositórios selecionados devem ser excluídos e escolha **Excluir**.

# Políticas de repositório privado no Amazon ECR
<a name="repository-policies"></a>

O Amazon ECR usa permissões baseadas em recursos para controlar o acesso a repositórios. As permissões baseadas em recursos permitem especificar quais perfis ou usuários têm acesso a um repositório e quais ações eles podem realizar nele. Por padrão, somente a AWS conta que criou o repositório tem acesso ao repositório. Você pode aplicar uma política de repositório que permite acesso adicional ao repositório.

**Topics**
+ [

## Políticas de repositório versus políticas do IAM
](#repository-policy-vs-iam-policy)
+ [

# Exemplos de políticas de repositório privado no Amazon ECR
](repository-policy-examples.md)
+ [

# Configurar uma declaração de política de repositório privado no Amazon ECR
](set-repository-policy.md)

## Políticas de repositório versus políticas do IAM
<a name="repository-policy-vs-iam-policy"></a>

As políticas de repositório do Amazon ECR são um subconjunto de políticas do IAM que têm como escopo e são usadas especificamente para controlar o acesso a repositórios individuais do Amazon ECR. As políticas do IAM geralmente são usadas para aplicar permissões a todo o serviço Amazon ECR, mas também podem ser usadas para controlar o acesso a recursos específicos.

Tanto as políticas de repositório do Amazon ECR quanto as políticas do IAM são usadas ao determinar quais ações uma função ou um usuário específico pode executar em um repositório. Se uma função ou um usuário tiver permissão para executar uma ação por meio de uma política de repositório, mas tiver a permissão negada por uma política do IAM (ou vice-versa), a ação será negada. Uma função ou um usuário somente precisa ter permissão para uma ação por meio de uma política de repositório ou uma política do IAM, mas não ambas para que a ação seja permitida.

**Importante**  
O Amazon ECR exige que os usuários tenham permissão para fazer chamadas para a API `ecr:GetAuthorizationToken` por meio de uma política do IAM antes que possam fazer a autenticação para um registro e enviar e extrair qualquer imagem de um repositório do Amazon ECR. O Amazon ECR fornece várias políticas gerenciadas do IAM para controlar o acesso do usuário em diversos níveis. Para obter mais informações, consulte [Exemplos de políticas baseadas em identidade do Amazon Elastic Container Registry](security_iam_id-based-policy-examples.md).

Você pode usar qualquer um desses tipos de política para controlar o acesso aos seus repositórios, conforme mostrado nos exemplos a seguir.

Este exemplo mostra uma política de repositório do Amazon ECR que permite que um usuário específico descreva o repositório e as imagens contidas nele.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "ECRRepositoryPolicy",
            "Effect": "Allow",
            "Principal": {"AWS": "arn:aws:iam::111122223333:user/username"},
            "Action": [
                "ecr:DescribeImages",
                "ecr:DescribeRepositories"
            ],
            "Resource": "*"
        }
    ]
}
```

------

Este exemplo mostra uma política do IAM que atinge o mesmo objetivo que o acima definindo o escopo da política como um repositório (especificado pelo ARN completo do repositório) usando o parâmetro de recurso. Para obter mais informações sobre o formato do nome de recurso da Amazon (ARN), consulte [Recursos](security_iam_service-with-iam.md#security_iam_service-with-iam-id-based-policies-resources).

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowDescribeRepoImage",
            "Effect": "Allow",
            "Action": [
                "ecr:DescribeImages",
                "ecr:DescribeRepositories"
            ],
            "Resource": ["arn:aws:ecr:us-east-1:111122223333:repository/repository-name"]
        }
    ]
}
```

------

# Exemplos de políticas de repositório privado no Amazon ECR
<a name="repository-policy-examples"></a>

**Importante**  
Os exemplos de políticas de repositório nesta página destinam-se a ser aplicados a repositórios privados do Amazon ECR. Eles não funcionarão corretamente se forem usados diretamente com um entidade principal IAM, a menos que sejam modificados para especificar o repositório Amazon ECR como o recurso. Para obter mais informações sobre a definição de políticas de repositório, consulte [Configurar uma declaração de política de repositório privado no Amazon ECR](set-repository-policy.md).

As políticas de repositório do Amazon ECR são um subconjunto de políticas do IAM que têm como escopo e são usadas especificamente para controlar o acesso a repositórios individuais do Amazon ECR. As políticas do IAM geralmente são usadas para aplicar permissões a todo o serviço Amazon ECR, mas também podem ser usadas para controlar o acesso a recursos específicos. Para obter mais informações, consulte [Políticas de repositório versus políticas do IAM](repository-policies.md#repository-policy-vs-iam-policy).

Os exemplos a seguir de políticas de repositório mostram declarações de permissão que você poderia usar para controlar o acesso aos seus repositórios privados do Amazon ECR.

**Importante**  
O Amazon ECR exige que os usuários tenham permissão para fazer chamadas para a API `ecr:GetAuthorizationToken` por meio de uma política do IAM antes que possam fazer a autenticação para um registro e enviar e extrair qualquer imagem de um repositório do Amazon ECR. O Amazon ECR fornece várias políticas gerenciadas do IAM para controlar o acesso do usuário em diversos níveis. Para obter mais informações, consulte [Exemplos de políticas baseadas em identidade do Amazon Elastic Container Registry](security_iam_id-based-policy-examples.md).

## Exemplo: permitir um ou mais usuários do
<a name="IAM_within_account"></a>

A política de repositório a seguir permite que um ou mais usuários do enviem e extraiam imagens de e para um repositório.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowPushPull",
            "Effect": "Allow",
            "Principal": {
                "AWS": [
                    "arn:aws:iam::111122223333:user/push-pull-user-1",
                    "arn:aws:iam::111122223333:user/push-pull-user-2"
                ]
            },
            "Action": [
                "ecr:BatchGetImage",
                "ecr:BatchCheckLayerAvailability",
                "ecr:CompleteLayerUpload",
                "ecr:GetDownloadUrlForLayer",
                "ecr:InitiateLayerUpload",
                "ecr:PutImage",
                "ecr:UploadLayerPart"
            ],
            "Resource": "*"
        }
    ]
}
```

------

## Exemplo: permitir outra conta
<a name="IAM_allow_other_accounts"></a>

A política de repositório a seguir permite que uma conta específica insira imagens.

**Importante**  
A conta para a qual você está concedendo permissões deve ter a região na qual você está criando a política de repositório ativada, caso contrário, ocorrerá um erro.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowCrossAccountPush",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::111122223333:root"
            },
            "Action": [
                "ecr:BatchCheckLayerAvailability",
                "ecr:CompleteLayerUpload",
                "ecr:InitiateLayerUpload",
                "ecr:PutImage",
                "ecr:UploadLayerPart"
            ],
            "Resource": "*"
        }
    ]
}
```

------

A política de repositório a seguir permite que alguns usuários extraiam imagens (*pull-user-1*e*pull-user-2*) enquanto fornecem acesso total a outra (*admin-user*).

**nota**  
Para políticas de repositório mais complicadas que atualmente não são suportadas no Console de gerenciamento da AWS, você pode aplicar a política com o [https://docs.aws.amazon.com/cli/latest/reference/ecr/set-repository-policy.html](https://docs.aws.amazon.com/cli/latest/reference/ecr/set-repository-policy.html) AWS CLI comando.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "AllowPull",
            "Effect": "Allow",
            "Principal": {
                "AWS": [
                    "arn:aws:iam::111122223333:user/pull-user-1",
                    "arn:aws:iam::111122223333:user/pull-user-2"
                ]
            },
            "Action": [
                "ecr:BatchGetImage",
                "ecr:GetDownloadUrlForLayer"
            ],
            "Resource": "*"
        },
        {
            "Sid": "AllowAll",
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::111122223333:user/admin-user"
            },
            "Action": [
                "ecr:*"
            ],
            "Resource": "*"
        }
    ]
}
```

------

## Exemplo: negar tudo
<a name="IAM_deny_all"></a>

A política de repositório a seguir nega a todos os usuários a capacidade de extrair imagens.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "DenyPull",
            "Effect": "Deny",
            "Principal": "*",
            "Action": [
                "ecr:BatchGetImage",
                "ecr:GetDownloadUrlForLayer"
            ],
            "Resource": "*"
        }
    ]
}
```

------

## Exemplo: restringir o acesso a endereços IP específicos
<a name="IAM_restrict_ip"></a>

O exemplo a seguir nega permissões a qualquer usuário para executar qualquer operação do Amazon ECR quando aplicada a um repositório de uma faixa específica de endereços.

A condição nesta declaração identifica o `54.240.143.*` intervalo de endereços IP permitidos do Protocolo de Internet versão 4 (IPv4).

O `Condition` bloco usa as `NotIpAddress` condições e a chave de `aws:SourceIp` condição, que é uma chave AWS de condição ampla. Para obter mais informações sobre chaves de condição, consulte [Chaves de contexto de condição globais da AWS](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html). Os `aws:sourceIp` IPv4 valores usam a notação CIDR padrão. Para obter mais informações, consulte [Operadores de condição de endereço IP](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_IPAddress) no *Guia do usuário do IAM*.

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Id": "ECRPolicyId1",
    "Statement": [
        {
            "Sid": "IPAllow",
            "Effect": "Deny",
            "Principal": "*",
            "Action": "ecr:*",
            "Resource": "*",
            "Condition": {
                "NotIpAddress": {
                    "aws:SourceIp": "54.240.143.0/24"
                }
            }
        }
    ]
}
```

------

## Exemplo: Permitir um AWS serviço
<a name="IAM_service_linked"></a>

A política de repositório a seguir permite o AWS CodeBuild acesso às ações de API do Amazon ECR necessárias para a integração com esse serviço. Ao usar o exemplo a seguir, você deve usar as chaves de condição `aws:SourceArn` e `aws:SourceAccount` para definir o escopo de quais recursos que podem assumir essas permissões. Para obter mais informações, consulte a [amostra do Amazon ECR CodeBuild](https://docs.aws.amazon.com/codebuild/latest/userguide/sample-ecr.html) no *Guia do AWS CodeBuild usuário*.

------
#### [ JSON ]

****  

```
{
   "Version":"2012-10-17",		 	 	 
   "Statement":[
      {
         "Sid":"CodeBuildAccess",
         "Effect":"Allow",
         "Principal":{
            "Service":"codebuild.amazonaws.com"
         },
         "Action":[
            "ecr:BatchGetImage",
            "ecr:GetDownloadUrlForLayer"
         ],
         "Resource": "*",
         "Condition":{
            "ArnLike":{
               "aws:SourceArn":"arn:aws:codebuild:us-east-1:123456789012:project/project-name"
            },
            "StringEquals":{
               "aws:SourceAccount":"123456789012"
            }
         }
      }
   ]
}
```

------

# Configurar uma declaração de política de repositório privado no Amazon ECR
<a name="set-repository-policy"></a>

Você pode adicionar uma declaração de política de acesso a um repositório no Console de gerenciamento da AWS seguindo as etapas abaixo. Você pode adicionar várias instruções de política por repositório. Para obter exemplos de políticas, consulte [Exemplos de políticas de repositório privado no Amazon ECR](repository-policy-examples.md).

**Importante**  
O Amazon ECR exige que os usuários tenham permissão para fazer chamadas para a API `ecr:GetAuthorizationToken` por meio de uma política do IAM antes que possam fazer a autenticação para um registro e enviar e extrair qualquer imagem de um repositório do Amazon ECR. O Amazon ECR fornece várias políticas gerenciadas do IAM para controlar o acesso do usuário em diversos níveis. Para obter mais informações, consulte [Exemplos de políticas baseadas em identidade do Amazon Elastic Container Registry](security_iam_id-based-policy-examples.md).

**Para configurar uma instrução de política de repositório**

1. Abra o console do Amazon ECR nos [https://console.aws.amazon.com/ecr/repositórios](https://console.aws.amazon.com/ecr/repositories).

1. Na barra de navegação, selecione a região que contém o repositório no qual será configurada uma instrução de política.

1. No painel de navegação, escolha **Repositories (Repositórios)**.

1. Na página **Repositories (Repositórios)**, escolha o repositório no qual definir uma instrução de política para visualizar o conteúdo do repositório.

1. Na exibição de lista de imagens do repositório, no painel de navegação, selecione **Permissions (Permissões)**, **Edit (Editar)**.
**nota**  
Se você não vir a opção **Permissions (Permissões)** no painel de navegação, verifique se você está na exibição de lista de imagens do repositório.

1. Na página **Editar permissões**, selecione **Adicionar declaração**.

1. Em **Statement name (Nome da instrução)**, insira um nome para a instrução.

1. Em **Effect (Efeito)**, escolha se a instrução da política resultará em uma permissão ou negação explícita.

1. Em **Principal**, escolha o escopo ao qual aplicar a instrução da política. Para obter mais informações, consulte [Elementos de política JSON da AWS : entidade principal](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_principal.html) no *Manual do usuário do IAM*.
   + Você pode aplicar a declaração a todos os AWS usuários autenticados marcando a caixa de seleção **Todos (\$1)**.
   + Em **Service principal (Principal do serviço)**, especifique o nome do principal do serviço (por exemplo, `ecs.amazonaws.com`) para aplicar a instrução a um serviço específico.
   +  IDsEm **AWS Conta**, especifique um número de AWS conta (por exemplo,`111122223333`) para aplicar a declaração a todos os usuários em uma AWS conta específica. Várias contas podem ser especificadas usando uma lista delimitada por vírgulas.
**Importante**  
A conta para a qual você está concedendo permissões deve ter a região na qual você está criando a política de repositório ativada, caso contrário, ocorrerá um erro.
   + Para **entidades do IAM**, selecione as funções ou os usuários em sua AWS conta aos quais aplicar a declaração.
**nota**  
Para políticas de repositório mais complicadas que atualmente não são suportadas no Console de gerenciamento da AWS, você pode aplicar a política com o [https://docs.aws.amazon.com/cli/latest/reference/ecr/set-repository-policy.html](https://docs.aws.amazon.com/cli/latest/reference/ecr/set-repository-policy.html) AWS CLI comando.

1. Em **Actions (Ações)**, escolha o escopo das operações da API do Amazon ECR ao qual a declaração de política deve ser aplicada na lista de operações de API individuais.

1. Quando terminar, escolha **Save (Salvar)** para definir a política.

1. Repita a etapa anterior para cada política de repositório a ser adicionada.

# Marcar um repositório privado no Amazon ECR
<a name="ecr-using-tags"></a>

*Para ajudá-lo a gerenciar seus repositórios Amazon ECR, você pode atribuir seus próprios metadados a repositórios Amazon ECR novos ou existentes usando tags de recursos. AWS * Por exemplo, você pode definir um conjunto de tags para os repositórios do Amazon ECR da sua conta para ajudar a rastrear o proprietário de cada repositório.

## Conceitos Básicos de Tags
<a name="tag-basics"></a>

As tags não têm significado semântico no Amazon ECR e são interpretadas estritamente como uma sequência dos caracteres. Tags não são automaticamente atribuídas aos recursos. É possível editar chaves de tags e valores, e é possível remover as tags de um recurso a qualquer momento. É possível definir o valor de uma tag a uma string vazia, mas não pode configurar o valor de um tag como nula. Se você adicionar uma tag que tenha a mesma chave de uma tag existente nesse recurso, o novo valor substituirá o antigo. Caso exclua um recurso, todas as respectivas tags também serão excluídas.

Você pode trabalhar com tags usando o console do Amazon ECR AWS CLI, o e a API do Amazon ECR.

Usando AWS Identity and Access Management (IAM), você pode controlar quais usuários em sua AWS conta têm permissão para criar, editar ou excluir tags. Para obter informações sobre tags nas políticas do IAM, consulte [Usar controle de acesso baseado em tags](ecr-supported-iam-actions-tagging.md).

## Marcar recursos para faturamento
<a name="tag-resources-for-billing"></a>

As tags que você adiciona aos repositórios do Amazon ECR são úteis para analisar a alocação de custos depois de habilitá-las em seu Relatório de custo e uso. Para obter mais informações, consulte [Relatórios de uso do Amazon ECR](usage-reports.md).

Para ver o custo dos recursos combinados, é possível organizar as informações de faturamento com base nos recursos com os mesmos valores da chave da tag. Por exemplo, é possível etiquetar vários recursos com um nome de aplicação específico, e depois organizar suas informações de faturamento para ver o custo total daquela aplicação em vários serviços. Para obter mais informações sobre como configurar um relatório de alocação de custos com tags, consulte [Relatório mensal de alocação de custos](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/configurecostallocreport.html) no *Manual do usuário do AWS Billing *.

**nota**  
Se você tiver acabado de habilitar a criação de relatórios, os dados do mês atual estarão disponíveis para visualização após 24 horas.

# Adicionar tags a um repositório privado do Amazon ECR
<a name="adding-tags-repositories"></a>

Você pode adicionar tags a um repositório privado.

Para obter informações sobre nomes e práticas recomendadas para tags, consulte [Limites e requisitos de nomenclatura de tags e](https://docs.aws.amazon.com//tag-editor/latest/userguide/tagging.html#tag-conventions) [Práticas recomendadas](https://docs.aws.amazon.com//tag-editor/latest/userguide/tagging.html#tag-best-practices) no Guia do *usuário de AWS recursos de marcação*.

## Adicionar tags a um repositório (Console de gerenciamento da AWS)
<a name="tag-resources-console"></a>

1. Abra o console do Amazon ECR em [https://console.aws.amazon.com/ecr/](https://console.aws.amazon.com/ecr/).

1. Na barra de navegação, selecione a região a ser usada.

1. No painel de navegação, escolha **Repositories (Repositórios)**.

1. Na página **Repositórios**, marque a caixa de seleção ao lado do repositório que você deseja marcar.

1. No menu **Ação**, selecione **Tags do repositório**.

1. Na página **Tags do repositório**, selecione **Adicionar tags**, **Adicionar tag**.

1. Na página **Editar tags do repositório**, especifique a chave e o valor de cada tag e escolha **Salvar**.

## Adicionar tags a um repositório (AWS CLI ou API)
<a name="tag-resources-api-sdk"></a>

Você pode adicionar ou substituir uma ou mais tags usando a AWS CLI ou uma API.
+ AWS CLI - recurso de [tag](https://docs.aws.amazon.com/cli/latest/reference/ecr/tag-resource.html)
+ Ação da API - [TagResource](https://docs.aws.amazon.com/AmazonECR/latest/APIReference/API_TagResource.html)

Os exemplos a seguir mostram como adicionar tags usando a AWS CLI.

**Exemplo 1: marcar um repositório**  
O comando a seguir marca um repositório.

```
aws ecr tag-resource \
     --resource-arn arn:aws:ecr:region:account_id:repository/repository_name \
     --tags Key=stack,Value=dev
```

**Exemplo 2: marcar um repositório com várias tags**  
O comando a seguir adiciona três tags a um repositório.

```
aws ecr tag-resource \
     --resource-arn arn:aws:ecr:region:account_id:repository/repository_name \
     --tags Key=key1,Value=value1 Key=key2,Value=value2 Key=key3,Value=value3
```

**Exemplo 3: listar tags de um repositório**  
O comando a seguir lista as tags associadas a um repositório.

```
aws ecr list-tags-for-resource \
     --resource-arn arn:aws:ecr:region:account_id:repository/repository_name
```

**Exemplo 4: criar um repositório e adicionar uma tag**  
O comando a seguir cria um repositório chamado `test-repo` e adiciona uma tag com a chave `team` e o valor `devs`.

```
aws ecr create-repository \
     --repository-name test-repo \
     --tags Key=team,Value=devs
```

# Excluir tags de um repositório privado no Amazon ECR
<a name="deleting-tags-repositories"></a>

Você pode excluir tags de um repositório privado.

## Para excluir uma tag de um repositório privado (Console de gerenciamento da AWS)
<a name="deleting-tags-repositories-console"></a>

1. Abra o console do Amazon ECR em [https://console.aws.amazon.com/ecr/](https://console.aws.amazon.com/ecr/).

1. Na barra de navegação, selecione a região a ser usada.

1. Na página **Repositórios**, marque a caixa de seleção ao lado do repositório do qual você deseja remover uma tag.

1. No menu **Ação**, selecione **Tags do repositório**.

1. Na página **Tags do repositório**, selecione **Editar**.

1. Na página **Editar tags do repositório**, selecione **Remover** para cada tag que você desejar excluir e escolha **Salvar**.

## Para excluir uma tag de um repositório privado (AWS CLI)
<a name="deleting-tags-repositories-cli"></a>

Você pode excluir uma ou mais tags usando a AWS CLI ou uma API.
+ AWS CLI - recurso de [desmarcação](https://docs.aws.amazon.com/cli/latest/reference/ecr/untag-resource.html)
+ Ação da API - [UntagResource](https://docs.aws.amazon.com/AmazonECR/latest/APIReference/API_UntagResource.html)

Os exemplos a seguir mostram como excluir uma tag de um repositório usando a AWS CLI.

```
aws ecr untag-resource \
     --resource-arn arn:aws:ecr:region:account_id:repository/repository_name \
     --tag-keys tag_key
```