

# Adicionar etiquetas e rótulos a recursos no DynamoDB
<a name="Tagging"></a>

Você pode rotular os recursos do Amazon DynamoDB com *tags*. As tags permitem categorizar recursos de diferentes maneiras, por exemplo, por finalidade, proprietário, ambiente ou outros critérios. As tags podem ajudar a fazer o seguinte:
+ Identificar rapidamente um recurso com base nas tags que você atribuiu a ele.
+ Veja as faturas da AWS discriminadas por tags.
**nota**  
Todos os índices secundários locais (LSI) e índices secundários globais (GSI) relacionados a tabelas marcadas são rotulados com as mesmas tags automaticamente. Atualmente, o uso de Streams pelo DynamoDB não pode ser marcado.

A marcação é suportada por serviços da AWS como Amazon EC2, Amazon S3, DynamoDB e outros. Uma marcação eficiente é capaz de fornecer insights de custos, permitindo criar relatórios entre serviços que possuem uma tag específica.

Para começar a usar tags, faça o seguinte:

1. Compreender [Restrições de marcação no DynamoDB](#TaggingRestrictions).

1. Criar tags usando [Marcar recursos no DynamoDB](Tagging.Operations.md).

1. Use [Usar etiquetas do DynamoDB para criar relatórios de alocação de custos](#CostAllocationReports) para controlar seus custos da AWS por tag ativa.

Por fim, é recomendável seguir estratégias de marcação ideais. Para obter informações, consulte [Estratégias de marcação da AWS](https://d0.awsstatic.com/aws-answers/AWS_Tagging_Strategies.pdf).

## Restrições de marcação no DynamoDB
<a name="TaggingRestrictions"></a>

 Cada tag consiste em uma chave e um valor, ambos definidos por você. As seguintes restrições são aplicáveis: 
+  Cada tabela do DynamoDB pode ter apenas uma tag com a mesma chave. Se você tentar adicionar uma tag existente (mesma chave), o valor da tag existente será atualizado para o novo valor. 
+  As chaves e valores das tags diferenciam maiúsculas de minúsculas. 
+  O comprimento máximo da chave é 128 caracteres Unicode. 
+ O número máximo de tags que você pode atribuir a um recurso é 256. 
+  Os caracteres permitidos são letras, espaço em branco e números, além dos seguintes caracteres especiais: `+ - = . _ : /` 
+  O número máximo de tags por recurso é 50.
+ O tamanho máximo aceito para todas as tags em uma tabela é de 10 KB.
+ Nomes e valores de tags atribuídos pela AWS recebem automaticamente o prefixo `aws:`, o qual não pode ser atribuído por você. Nomes de tags atribuídos pela AWS não contam para o limite de tag de recurso definido pelo usuário de 50 ou o limite máximo de tamanho de 10 KB. Nomes de tags atribuídos pelo usuário têm o prefixo `user:` no relatório de alocação de custos. 
+  Não é possível colocar uma data retroativa na aplicação de uma tag. 

# Marcar recursos no DynamoDB
<a name="Tagging.Operations"></a>

Você pode usar o console do Amazon DynamoDB ou a AWS Command Line Interface (AWS CLI) para adicionar, listar, editar ou excluir tags. Em seguida, você pode ativar essas tags definidas pelo usuário para que elas apareçam no console do Gerenciamento de Faturamento e Custos da AWS para o controle da alocação de custos. Para obter mais informações, consulte [Usar etiquetas do DynamoDB para criar relatórios de alocação de custos](Tagging.md#CostAllocationReports). 

 Para edição em massa, também é possível usar o Tag Editor no Console de gerenciamento da AWS. Para obter mais informações, consulte [Trabalhar com o Tag Editor](https://docs.aws.amazon.com/awsconsolehelpdocs/latest/gsg/tag-editor.html).

 Para usar a API do DynamoDB, consulte as operações a seguir na [Referência da API do Amazon DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/):
+ [TagResource](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_TagResource.html)
+ [UntagResource](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_UntagResource.html)
+ [ListTagsOfResource](https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_ListTagsOfResource.html)

**Topics**
+ [Configuração de permissões para filtrar por tags](#Tagging.Operations.permissions)
+ [Adição de tags a tabelas novas ou existentes (Console de gerenciamento da AWS)](#Tagging.Operations.using-console)
+ [Adição de tags a tabelas novas ou existentes (AWS CLI)](#Tagging.Operations.using-cli)

## Configuração de permissões para filtrar por tags
<a name="Tagging.Operations.permissions"></a>

Para usar etiquetas a fim de filtrar sua lista de tabelas no console do DynamoDB, as políticas do seu usuário devem incluir acesso às seguintes operações:
+ `tag:GetTagKeys`
+ `tag:GetTagValues`

Para acessar essas operações, anexe uma nova política do IAM ao seu usuário seguindo as etapas abaixo.

1. Acesse o [console do IAM](https://console.aws.amazon.com/iam/) com um usuário administrativo.

1. No painel de navegação à esquerda, selecione "Policies" (Políticas).

1. Selecione "Create Policy" (Criar política).

1. No editor, a política a seguir no editor de JSON.

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

****  

   ```
   {
       "Version":"2012-10-17",		 	 	 
       "Statement": [
           {
               "Effect": "Allow",
               "Action": [
                   "tag:GetTagKeys",
                   "tag:GetTagValues"
               ],
               "Resource": "*"
           }
       ]
   }
   ```

------

1. Conclua o assistente e atribua um nome à política (por exemplo, `TagKeysAndValuesReadAccess`).

1. No menu de navegação à esquerda, selecione "Users" (Usuários).

1. Na lista, selecione o usuário que você normalmente usa para acessar o console do DynamoDB.

1. Selecione "Add permissions" (Adicionar permissões).

1. Selecione "Attach existing policies directly" (Anexar políticas existentes diretamente).

1. Na lista, selecione a política que você criou anteriormente.

1. Assista todo o assistente.

## Adição de tags a tabelas novas ou existentes (Console de gerenciamento da AWS)
<a name="Tagging.Operations.using-console"></a>

Você pode usar o console do DynamoDB para adicionar tags a novas tabelas ao criá-las, ou para adicionar, editar ou excluir tags de tabelas existentes.

**Para marcar recursos na criação (console)**

1. Faça login no Console de gerenciamento da AWS e abra o console do DynamoDB em [https://console.aws.amazon.com/dynamodb/](https://console.aws.amazon.com/dynamodb/).

1. No painel de navegação, selecione **Tabelas** e **Criar tabela**.

1. Na página **Create DynamoDB table (Criar tabela DynamoDB)**, forneça um nome e uma chave primária. Na seção **Tags (Etiquetas)**, escolha **Add new tag (Adicionar nova etiqueta)** e insira as etiquetas que você deseja usar.

   Para obter informações sobre a estrutura da tag, consulte [Restrições de marcação no DynamoDB](Tagging.md#TaggingRestrictions). 

   Para obter mais informações sobre como criar tabelas, consulte [Operações básicas em tabelas do DynamoDB](WorkingWithTables.Basics.md).

**Para marcar recursos existentes (console)**

Abra o console do DynamoDB em [https://console.aws.amazon.com/dynamodb/](https://console.aws.amazon.com/dynamodb/).

1. No painel de navegação, selecione **Tables** (Tabelas).

1. Escolha uma tabela na lista e escolha a guia **Additional settings (Configurações adicionais)**. Você pode adicionar, editar ou excluir seus marcadores na seção **Tags (Etiquetas)** na parte inferior da página.

## Adição de tags a tabelas novas ou existentes (AWS CLI)
<a name="Tagging.Operations.using-cli"></a>

Os exemplos a seguir mostram como usar a AWS CLI para especificar tags ao criar tabelas e índices e para marcar recursos existentes.

**Para marcar recursos na criação (AWS CLI)**
+ O exemplo a seguir cria uma nova tabela `Movies` e adiciona a tag `Owner` com um valor de `blueTeam`: 

  ```
  aws dynamodb create-table \
      --table-name Movies \
      --attribute-definitions AttributeName=Title,AttributeType=S \
      --key-schema AttributeName=Title,KeyType=HASH \
      --provisioned-throughput ReadCapacityUnits=5,WriteCapacityUnits=5 \
      --tags Key=Owner,Value=blueTeam
  ```

**Para marcar recursos existentes (AWS CLI)**
+ O exemplo a seguir adiciona a tag `Owner` com um valor de `blueTeam` à tabela `Movies`: 

  ```
  aws dynamodb tag-resource \
      --resource-arn arn:aws:dynamodb:us-east-1:123456789012:table/Movies \
      --tags Key=Owner,Value=blueTeam
  ```

**Para listar todas as tags de uma tabela (AWS CLI)**
+ O exemplo a seguir relaciona todas as tags associadas à tabela `Movies`.

  ```
  aws dynamodb list-tags-of-resource \
      --resource-arn arn:aws:dynamodb:us-east-1:123456789012:table/Movies
  ```

## Usar etiquetas do DynamoDB para criar relatórios de alocação de custos
<a name="CostAllocationReports"></a>

A AWS usa tags para organizar os custos de recursos no seu relatório de alocação de custos. A AWS fornece dois tipos de tags alocação de custos:
+ Uma tag gerada pela AWS. A AWS define, cria e aplica essa tag para você.
+ Tags definidas pelo usuário. Você define, cria e aplica essas tags.

É necessário ativar os dois tipos de tags separadamente para que elas possam ser exibidas no Cost Explorer ou em um relatório de alocação de custos. 

 Para ativar tags geradas pela AWS: 

1.  Faça login no Console de gerenciamento da AWS e abra o console do Billing and Cost Management em [https://console.aws.amazon.com/billing/home\$1/](https://console.aws.amazon.com/billing/home#/.). 

1.  No painel de navegação, escolha **Cost Allocation Tags**. 

1.  Em **AWSGenerated Cost Allocation Tags (Etiquetas de alocação de custos geradas)**, escolha **Activate (Ativar)**. 

 Para ativar tags definidas pelo usuário: 

1.  Faça login no Console de gerenciamento da AWS e abra o console do Billing and Cost Management em [https://console.aws.amazon.com/billing/home\$1/](https://console.aws.amazon.com/billing/home#/.). 

1.  No painel de navegação, escolha **Cost Allocation Tags**. 

1.  Em **Tags de alocação de custos definidos pelo usuário**, escolha **Ativar**. 

 Após você criar e ativar tags, a AWS gera um relatório de alocação de custos com a utilização e os custos agrupados de acordo com as tags ativas. O relatório de alocação de custos inclui todos os seus custos da AWS para cada período de faturamento. O relatório inclui recursos com e sem tags, para que você possa organizar claramente as cobranças de cada um deles. 

**nota**  
 No momento, os dados transferidos do DynamoDB não são categorizados por tags em relatórios de alocação de custos. 

 Para obter mais informações, consulte [Usar tags de alocação de custos](https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/cost-alloc-tags.html). 