Enviar eventos para o CloudWatch Logs - AWS CloudTrail

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

Enviar eventos para o CloudWatch Logs

Quando você configura sua trilha para enviar eventos para o CloudWatch Logs, o CloudTrail envia somente os eventos que correspondem às configurações da trilha. Por exemplo, se você configurar sua trilha para registrar somente eventos de dados, ela enviará eventos de dados somente ao grupo de logs do CloudWatch Logs. O CloudTrail oferece suporte ao envio de dados, Insights e eventos de gerenciamento ao CloudWatch Logs. Para obter mais informações, consulte Trabalhar com arquivos de log do CloudTrail.

nota

Somente a conta de gerenciamento pode configurar um grupo de logs do CloudWatch Logs para uma trilha da organização usando o console. O administrador delegado pode configurar um grupo de logs do CloudWatch Logs usando a AWS CLI ou as operações do CreateTrail CloudTrail ou da API UpdateTrail.

Para enviar eventos a um grupo de logs do CloudWatch Logs:

Configurar o monitoramento do CloudWatch Logs com o console

Você pode usar o AWS Management Console para configurar a sua trilha para enviar eventos para o CloudWatch Logs para monitoramento.

Criar um grupo de logs ou especificar um existente

O CloudTrail usa um grupo de logs do CloudWatch Logs como um endpoint de entrega de eventos de log. Você pode criar um grupo de logs ou especificar um existente.

Para criar ou especificar um grupo de logs para uma trilha existente
  1. Verifique se você está conectado a um usuário administrativo ou perfil com permissões suficientes para configurar a integração do CloudWatch Logs. Para obter mais informações, consulte Conceder permissão para visualizar e configurar as informações do Amazon CloudWatch Logs no console CloudTrail .

    nota

    Somente a conta de gerenciamento pode configurar um grupo de logs do CloudWatch Logs para uma trilha da organização usando o console. O administrador delegado pode configurar um grupo de logs do CloudWatch Logs usando a AWS CLI ou as operações do CreateTrail CloudTrail ou da API UpdateTrail.

  2. Abra o console do CloudTrail em https://console.aws.amazon.com/cloudfront/.

  3. Escolha o nome da trilha. Se você escolher uma trilha que se aplica a todas as regiões, será redirecionado para a região em que ela foi criada. Você pode criar um grupo de logs ou escolher um existente na mesma região que a trilha.

    nota

    Uma trilha que se aplica a todas as regiões envia arquivos de log de todas as regiões para o grupo de logs do CloudWatch Logs que você especificar.

  4. No CloudWatch Logs, escolha Edit (Editar).

  5. Em CloudWatch Logs, escolha Habilitado.

  6. Em Nome do grupo de logs, escolha Novo para criar um novo grupo de logs ou Existente para usar um existente. Se escolher New (Novo), o CloudTrail especificará um nome para o novo grupo de logs para você ou você pode digitar um nome. Para obter mais informações sobre nomenclatura, consulte Nomenclatura de grupos de log e fluxos de log do CloudWatch para o CloudTrail.

  7. Se escolher Existing (Existente), escolha um grupo de logs na lista suspensa.

  8. Em Nome do perfil, escolha Novo para criar um novo perfil do IAM com permissões para enviar logs para o CloudWatch Logs. Escolha Existing (Existente) para escolher uma função do IAM existente na lista suspensa. A declaração de política para a função nova ou existente é exibida quando você expande Policy document (Documento de política). Para obter mais informações sobre essa função, consulte Documento de política de funções CloudTrail para usar CloudWatch registros para monitoramento.

    nota

    Quando você configurar uma trilha, você pode escolher um bucket do S3 e um tópico do SNS que pertençam a outra conta. No entanto, se você quiser que o CloudTrail forneça eventos a um grupo de logs do CloudWatch Logs, precisará escolher um grupo de logs existente na sua conta atual.

  9. Escolha Save changes (Salvar alterações).

Especificar uma função do IAM

Você pode especificar uma função que o CloudTrail deverá assumir para fornecer eventos ao fluxo de logs.

Para especificar uma função
  1. Por padrão, a CloudTrail_CloudWatchLogs_Role é especificada para você. A política de função padrão tem as permissões necessárias para criar um fluxo de logs do CloudWatch Logs em um grupo de logs que você especificar e para fornecer eventos do CloudTrail a esse fluxo de logs.

    nota

    Se você quiser usar essa função para um grupo de logs de uma trilha da organização, deverá modificar manualmente a política após a criação da função. Para obter mais informações, consulte este exemplo de política e Criar uma trilha para uma organização.

    1. Para verificar a função, acesse o console do AWS Identity and Access Management em https://console.aws.amazon.com/iam/.

    2. Escolha Roles (Funções) e escolha o CloudTrail_CloudWatchLogs_Role.

    3. Na guia Permissões, expanda a política para visualizar seu conteúdo.

  2. Você pode especificar outra função, mas deve anexar a política de função obrigatória à função existente, se deseja usá-la para enviar eventos para o CloudWatch Logs. Para obter mais informações, consulte Documento de política de funções CloudTrail para usar CloudWatch registros para monitoramento.

Visualizar eventos no console do CloudWatch

Depois de configurar a trilha para enviar eventos ao grupo de logs do CloudWatch Logs, você pode visualizar os eventos no console do CloudWatch. O CloudTrail normalmente entrega eventos ao grupo de logs em média até 5 minutos após uma chamada de API. Desta vez não há garantias. Consulte o Acordo de Nível de Serviço do AWS CloudTrail para obter mais informações.

Para visualizar eventos no console do CloudWatch
  1. Abra o console do CloudWatch em https://console.aws.amazon.com/cloudwatch/.

  2. No painel de navegação esquerdo, em Logs, escolha Grupos de logs.

  3. Escolha o grupo de logs que você especificou para a sua trilha.

  4. Escolha o fluxo de logs que deseja visualizar.

  5. Para ver os detalhes do evento que sua trilha registrou, escolha um evento.

nota

A coluna Horário (UTC) no console do CloudWatch mostra quando o evento foi fornecido ao seu grupo de logs. Para ver o horário real em que o evento foi registrado pelo CloudTrail, consulte o campo eventTime.

Configurar o monitoramento do CloudWatch Logs usando o AWS CLI

Você pode usar o AWS CLI para configurar o CloudTrail para enviar eventos para o CloudWatch Logs para monitoramento.

Criar um grupo de logs

  1. Se você não tem um grupo de logs existente, crie um grupo de logs do CloudWatch Logs como um endpoint de entrega de eventos de log usando o comando create-log-group do CloudWatch Logs.

    aws logs create-log-group --log-group-name name

    O exemplo a seguir cria um grupo de logs chamado CloudTrail/logs:

    aws logs create-log-group --log-group-name CloudTrail/logs
  2. Recupere o grupo de logs Nome de recurso da Amazon (ARN).

    aws logs describe-log-groups

Criar uma função

Crie uma função para o CloudTrail que permita que ele envie eventos ao grupo de logs do CloudWatch Logs. O comando create-role do IAM usa dois parâmetros: um nome de função e um caminho de arquivo para um documento de política para assumir uma função no formato JSON. O documento de política que você usa concede permissões do CloudTrail a AssumeRole. O comando create-role cria a função com as permissões necessárias.

Para criar o arquivo JSON que conterá o documento de política, abra um editor de texto e salve o conteúdo de política a seguir em um arquivo chamado assume_role_policy_document.json.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": "cloudtrail.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

Execute o comando a seguir para criar a função com permissões de AssumeRole para o CloudTrail.

aws iam create-role --role-name role_name --assume-role-policy-document file://<path to assume_role_policy_document>.json

Quando o comando for concluído, anote o ARN da função no resultado.

Criar um documento de política

Crie o documento de política de função a seguir para o CloudTrail. Este documento concede ao CloudTrail as permissões necessárias para criar um fluxo de log do CloudWatch Logs no grupo de logs especificado e para fornecer eventos do CloudTrail para esse fluxo de log.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AWSCloudTrailCreateLogStream2014110", "Effect": "Allow", "Action": [ "logs:CreateLogStream" ], "Resource": [ "arn:aws:logs:region:accountID:log-group:log_group_name:log-stream:accountID_CloudTrail_region*" ] }, { "Sid": "AWSCloudTrailPutLogEvents20141101", "Effect": "Allow", "Action": [ "logs:PutLogEvents" ], "Resource": [ "arn:aws:logs:region:accountID:log-group:log_group_name:log-stream:accountID_CloudTrail_region*" ] } ] }

Salve o documento de política em um arquivo chamado role-policy-document.json.

Se você criar uma política que também pode ser usada para trilhas da organização, precisará configurá-la de maneira um pouco diferente. Por exemplo, a política a seguir concede ao CloudTrail as permissões necessárias para criar um fluxo de logs do CloudWatch Logs no grupo de logs especificado e para fornecer eventos do CloudTrail a esse fluxo de logs para ambas as trilhas na conta da AWS 111111111111 e para trilhas da organização criadas na conta 111111111111 que são aplicadas à organização do AWS Organizations com o ID de o-exampleorgid:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AWSCloudTrailCreateLogStream20141101", "Effect": "Allow", "Action": [ "logs:CreateLogStream" ], "Resource": [ "arn:aws:logs:us-east-2:111111111111:log-group:CloudTrail/DefaultLogGroupTest:log-stream:111111111111_CloudTrail_us-east-2*", "arn:aws:logs:us-east-2:111111111111:log-group:CloudTrail/DefaultLogGroupTest:log-stream:o-exampleorgid_*" ] }, { "Sid": "AWSCloudTrailPutLogEvents20141101", "Effect": "Allow", "Action": [ "logs:PutLogEvents" ], "Resource": [ "arn:aws:logs:us-east-2:111111111111:log-group:CloudTrail/DefaultLogGroupTest:log-stream:111111111111_CloudTrail_us-east-2*", "arn:aws:logs:us-east-2:111111111111:log-group:CloudTrail/DefaultLogGroupTest:log-stream:o-exampleorgid_*" ] } ] }

Para obter mais informações sobre trilhas da organização, consulte Criar uma trilha para uma organização.

Execute o comando a seguir para aplicar a política à função.

aws iam put-role-policy --role-name role_name --policy-name cloudtrail-policy --policy-document file://<path to role-policy-document>.json

Atualizar a trilha

Atualize a trilha com o grupo de logs e as informações da função usando o comando update-trail do CloudTrail.

aws cloudtrail update-trail --name trail_name --cloud-watch-logs-log-group-arn log_group_arn --cloud-watch-logs-role-arn role_arn

Para obter mais informações sobre os comandos da AWS CLI, consulte a Referência da linha de comando do AWS CloudTrail.

Limitação

O CloudWatch Logs e o EventBridge permitem cada um tamanho máximo de evento de 256 KB. Embora a maioria dos eventos de serviço tenha um tamanho máximo de 256 KB, alguns serviços ainda têm eventos maiores. O CloudTrail não envia esses eventos para o CloudWatch Logs ou o EventBridge.

A partir da versão de evento 1.05 do CloudTrail, os eventos têm um tamanho máximo de 256 KB. O objetivo é ajudar a evitar a exploração por agentes mal-intencionados e permitir que os eventos sejam consumidos por outros serviços da AWS, como o CloudWatch Logs e o EventBridge.