

# Práticas recomendadas de segurança de detecção do DynamoDB
<a name="best-practices-security-detective"></a>

As práticas recomendadas a seguir para o Amazon DynamoDB podem ajudar a detectar pontos fracos e incidentes potenciais de segurança.

**Usar o AWS CloudTrail para monitorar o uso de chaves do KMS gerenciadas pela AWS**  
Se você estiver usando uma [Chave gerenciada pela AWS](https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk) para criptografia em repouso, o uso dessa chave é registrado em log no AWS CloudTrail. O CloudTrail fornece visibilidade da atividade do usuário ao registrar ações realizadas em sua conta. O CloudTrail registra informações importantes sobre cada ação, incluindo quem fez a solicitação, os serviços usados, as ações realizadas, os parâmetros das ações e os elementos de resposta retornados pelo serviço da AWS. Essas informações ajudam você a rastrear as alterações feitas em seus recursos da AWS e solucionar problemas operacionais. O CloudTrail facilita garantir a conformidade com as políticas internas e os padrões regulatórios.  
Use o CloudTrail para auditar o uso de chaves. O CloudTrail cria arquivos de log que contêm um histórico de chamadas da AWS API e eventos relacionados da sua conta. Esses arquivos de log incluem todas as solicitações da API do AWS KMS feitas com o Console de gerenciamento da AWS, AWS SDKs e ferramentas da linha de comando, como também pelos serviços integrados da AWS. Você pode usar esses arquivos de log para obter informações sobre quando a chave do KMS foi usada, a operação solicitada, a identidade do solicitante, o endereço IP de origem da solicitação e assim por diante. Para obter mais informações, consulte [Como registrar chamadas de API do AWS KMS com o AWS CloudTrail](https://docs.aws.amazon.com/kms/latest/developerguide/logging-using-cloudtrail.html) no [Guia do usuário do AWS CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/).

**Monitorar operações do DynamoDB usando o CloudTrail**  
O CloudTrail pode monitorar eventos de ambiente de gerenciamento e eventos de plano de dados. As operações do ambiente de gerenciamento permitem criar e gerenciar tabelas do DynamoDB. Elas também permitem que você trabalhe com índices, fluxos e outros objetos que são dependentes de tabelas. As operações do plano de dados permitem criar, ler, atualizar e excluir (também chamadas de *CRUD*) nos dados de uma tabela. Algumas das operações de plano de dados também permitem que você leia dados de um índice secundário. Para ativar o registro de eventos de plano de dados no CloudTrail, você precisará ativar o registro da atividade da API do plano de dados no CloudTrail. Para obter mais informações, consulte [Log de eventos de dados para trilhas](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/logging-data-events-with-cloudtrail.html).  
Quando uma atividade ocorre no DynamoDB, essa atividade é registrada em um evento do CloudTrail com outros eventos de serviços da AWS no histórico de eventos. Para obter mais informações, consulte [Log de operações do DynamoDB usando o AWS CloudTrail](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/logging-using-cloudtrail.html). É possível visualizar, pesquisar e baixar eventos recentes em sua conta da AWS. Para obter mais informações, consulte [Visualizar eventos com o histórico de eventos CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/view-cloudtrail-events.html) no *Guia do usuário do AWS CloudTrail*.  
Para obter um registro contínuo de eventos na sua conta da AWS, incluindo eventos do DynamoDB, crie uma [trilha](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-create-and-update-a-trail.html). Uma trilha permite que o CloudTrail entregue arquivos de log a um bucket do Amazon Simple Storage Service (Amazon S3). Por padrão, quando você cria uma trilha no console, ela é aplicada a todas as regiões do AWS. A trilha registra eventos de todas as regiões na partição da AWS e fornece os arquivos de log ao bucket do S3 que você especificar. Além disso, é possível configurar outros serviços da AWS para analisar e agir melhor com base nos dados de eventos coletados nos logs do CloudTrail.

**Use o DynamoDB Streams para monitorar operações de plano de dados**  
O DynamoDB é integrado ao AWS Lambda para que você possa criar acionadores (pedaços de código que respondem automaticamente a eventos no DynamoDB Streams). Com os acionadores, você pode criar aplicações que reagem às modificações de dados em tabelas do DynamoDB.  
Se você habilitar o DynamoDB Streams em uma tabela, poderá associar o nome do recurso da Amazon (ARN) do fluxo a uma função do Lambda escrita por você. Imediatamente após um item da tabela ser modificado, um novo registro aparece no fluxo da tabela. O AWS Lambda pesquisa o fluxo e invoca a função do Lambda de forma síncrona ao detectar novos registros de fluxo. A função do Lambda pode realizar qualquer ação que você especificar, como enviar uma notificação ou iniciar um fluxo de trabalho.  
Para ver um exemplo, consulte [Tutorial: Como usar o AWS Lambda com o Amazon DynamoDB Streams](https://docs.aws.amazon.com/lambda/latest/dg/with-ddb-example.html). Esse exemplo recebe uma entrada de evento do DynamoDB, processa as mensagens que ele contém e grava alguns dados de evento de entrada no Amazon CloudWatch Logs.

**Monitorar a configuração do DynamoDB com o AWS Config**  
Usando o [AWS Config](https://docs.aws.amazon.com/config/latest/developerguide/WhatIsConfig.html), você pode monitorar e gravar alterações de configuração de forma contínua dos seus recursos da AWS. Você também pode usar o AWS Config para fazer o inventário dos seus recursos da AWS. Quando uma alteração em um estado anterior é detectada, uma notificação do Amazon Simple Notification Service (Amazon SNS) pode ser entregue para que você revise e adote as medidas necessárias. Siga as orientações em [Configurar uma AWS Config com o console](https://docs.aws.amazon.com/config/latest/developerguide/gs-console.html), garantindo que os tipos de recursos do DynamoDB estejam incluídos.  
Você pode configurar o AWS Config para transmitir as alterações de configuração e notificações para um tópico do Amazon SNS. Por exemplo, quando um recurso é atualizado, você pode receber uma notificação em seu e-mail, para que possa visualizar as alterações. Você também pode ser notificado quando o AWS Config avaliar suas regras gerenciadas ou personalizadas em relação aos seus recursos.  
Para ver um exemplo, consulte [Notificações enviadas pelo AWS Config para um tópico do Amazon SNS](https://docs.aws.amazon.com/config/latest/developerguide/notifications-for-AWS-Config.html) no *Guia do desenvolvedor do AWS Config*.

**Monitorar a compatibilidade do DynamoDB com regras do AWS Config**  
AWS ConfigO rastreia continuamente as alterações de configuração que ocorrem entre seus recursos. Ele verifica se as mudanças violam qualquer condição nas regras. Se um recurso viola uma regra, o AWS Config sinaliza o recurso e a regra como não compatíveis.  
Ao usar o AWS Config para avaliar suas configurações de recurso, é possível avaliar se suas configurações de recurso atendem adequadamente a práticas internas e a diretrizes e regulamentações do setor. O AWS Config oferece [regras gerenciadas pela AWS](https://docs.aws.amazon.com/config/latest/developerguide/managed-rules-by-aws-config.html), que são regras predefinidas e personalizáveis que o AWS Config usa para avaliar se seus recursos da AWS estão em conformidade com as práticas recomendadas mais comuns.

**Marcar seus recursos do DynamoDB para identificação e automação**  
Você pode atribuir metadados aos seus recursos da AWS na forma de tags. Cada tag é um rótulo simples que consiste em uma chave definida pelo cliente e um valor opcional que pode facilitar o gerenciamento, a pesquisa e a filtragem de recursos.   
A atribuição de tags (tagging) permite a implementação de controles agrupados. Embora não haja tipos de tags inerentes, elas permitem categorizar recursos por finalidade, proprietário, ambiente ou outros critérios. Veja os seguintes exemplos:  
+ Segurança: usada para determinar requisitos como criptografia.
+ Confidencialidade: um identificador do nível de confidencialidade de dados específico permitido por um recurso.
+ Ambiente: usado para distinguir entre as infraestruturas de desenvolvimento, teste e produção.
Para obter mais informações, consulte [Estratégias de marcação da AWS](https://aws.amazon.com/answers/account-management/aws-tagging-strategies/) e [Marcação no DynamoDB](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Tagging.html).

**Monitore seu uso do Amazon DynamoDB em relação às práticas recomendadas de segurança usando o AWS Security Hub CSPM.**  
O CSPM do Security Hub usa controles de segurança para avaliar configurações de recursos e padrões de segurança que ajudam você a atender a vários frameworks de conformidade.  
Para acessar mais informações sobre como usar o Security Hub CSPM para avaliar os recursos do DynamoDB, consulte [Controles do Amazon DynamoDB](https://docs.aws.amazon.com/securityhub/latest/userguide/dynamodb-controls.html) no *Guia do usuário do AWS Security Hub CSPM*.