0Pricing
Cloud & IT Cert Prep · Aula

Trilhas e histórico de eventos do CloudTrail

Crie trilhas de eventos de gerenciamento e de dados, entregue registros ao S3 e ao CloudWatch Logs e pesquise o histórico de eventos dos últimos 90 dias no console.

Trilhas e histórico de eventos do CloudTrail é uma aula grátis de Cloud & IT Cert Prep no CoddyKit. Esta é a aula 1 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Cloud & IT Cert Prep, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Cloud & IT Cert Prep inclui 4 aulas no total.

O que é o AWS CloudTrail?

O AWS CloudTrail é um serviço que registra cada chamada de API feita na sua conta da AWS — seja pelo console, pela CLI, pelo SDK ou por outro serviço da AWS. Cada registro é chamado de evento do CloudTrail e contém a ação da API, a identidade do solicitante, o IP de origem, os parâmetros da solicitação e a resposta. O CloudTrail é a base da auditoria de segurança, da conformidade e da investigação operacional na AWS. Para a prova SAA-C03, ele é a resposta sempre que uma questão perguntar “quem fez esta alteração?”.

Event History: consulta gratuita dos últimos 90 dias

Por padrão, toda conta da AWS tem acesso ao CloudTrail Event History — um registro contínuo de 90 dias de eventos de gerenciamento, que pode ser visualizado no console ou consultado pela CLI. Você pode filtrar por nome do recurso, tipo de recurso, nome do evento ou nome de usuário. O Event History é gratuito, não exige configuração e está disponível imediatamente. É a maneira mais rápida de investigar alterações recentes, mas, para obter retenção mais longa ou consultas mais avançadas, você precisa criar um Trail.

# Search event history for who deleted an S3 bucket in the last 7 days
aws cloudtrail lookup-events \
  --lookup-attributes AttributeKey=EventName,AttributeValue=DeleteBucket \
  --start-time $(date -u -d '7 days ago' +%Y-%m-%dT%H:%M:%SZ) \
  --query 'Events[].{Time:EventTime,User:Username,Detail:CloudTrailEvent}' \
  --output table

Criação de um Trail do CloudTrail

Um Trail é uma configuração do CloudTrail que entrega eventos continuamente a um bucket do S3 (e, opcionalmente, ao CloudWatch Logs). Você paga pelo armazenamento no S3 e pela transferência de dados. Um Trail pode ser limitado a uma única Região ou configurado como um Trail de várias Regiões que captura eventos de todas as Regiões atuais e futuras da sua conta. Para a prova SAA-C03, sempre recomende um Trail de várias Regiões — Trails de uma única Região não registram atividades em outras Regiões e são considerados uma lacuna de segurança.

# Create a multi-region trail delivering to S3
aws cloudtrail create-trail \
  --name OrgAuditTrail \
  --s3-bucket-name my-cloudtrail-logs-111122223333 \
  --is-multi-region-trail \
  --include-global-service-events \
  --enable-log-file-validation

# Start logging (trails are created in 'paused' state)
aws cloudtrail start-logging --name OrgAuditTrail

Eventos de gerenciamento versus eventos de dados

O CloudTrail registra duas categorias de eventos: eventos de gerenciamento (também chamados de eventos do plano de controle) registram operações em recursos — criar uma instância do EC2, modificar um grupo de segurança ou anexar uma política do IAM. Eles são habilitados por padrão em todos os Trails, sem cobrança adicional por evento. Eventos de dados registram operações no nível do objeto — GetObject, PutObject ou DeleteObject do S3, ou Invoke do Lambda. Os eventos de dados podem ter um volume muito alto e gerar cobranças adicionais; por isso, precisam ser habilitados explicitamente por recurso ou tipo de recurso.

# Add data event logging for all S3 objects in a specific bucket
aws cloudtrail put-event-selectors \
  --trail-name OrgAuditTrail \
  --event-selectors '[
    {
      "ReadWriteType": "All",
      "IncludeManagementEvents": true,
      "DataResources": [
        {
          "Type": "AWS::S3::Object",
          "Values": ["arn:aws:s3:::my-sensitive-bucket/"]
        }
      ]
    }
  ]'

Integração do CloudTrail com o CloudWatch Logs

Entregar eventos do CloudTrail ao CloudWatch Logs permite gerar alertas em tempo real sobre atividades de API. Você pode criar filtros de métricas no grupo de registros do CloudTrail para contar eventos específicos — por exemplo, contar chamadas de DeleteBucket ou CreateUser — e então configurar alarmes do CloudWatch para alertar sua equipe de segurança poucos minutos após uma ação suspeita. Esse é um padrão fundamental do CIS AWS Foundations Benchmark, frequentemente mencionado na prova SAA-C03.

# Update a trail to also deliver to CloudWatch Logs
aws cloudtrail update-trail \
  --name OrgAuditTrail \
  --cloud-watch-logs-log-group-arn arn:aws:logs:us-east-1:111122223333:log-group:CloudTrail/Logs:* \
  --cloud-watch-logs-role-arn arn:aws:iam::111122223333:role/CloudTrailCWLogsRole

# Create a metric filter for root account login
aws logs put-metric-filter \
  --log-group-name CloudTrail/Logs \
  --filter-name RootLogin \
  --filter-pattern '{$.userIdentity.type = "Root" && $.eventName = "ConsoleLogin"}' \
  --metric-transformations metricName=RootLogins,metricNamespace=CISBenchmark,metricValue=1

Eventos de serviços globais

Alguns serviços da AWS — principalmente IAM, STS, Route 53 e CloudFront — são globais e registram suas chamadas de API como eventos de serviços globais. Esses eventos são sempre registrados na Região us-east-1, independentemente de onde a operação foi iniciada. Ao criar um Trail, habilite --include-global-service-events para capturar a criação de usuários do IAM, alterações de políticas e assunções de funções do STS. Se você tiver vários Trails específicos de Região, habilite os eventos de serviços globais em apenas um deles para evitar registros duplicados.

# Verify that global service events are enabled on a trail
aws cloudtrail get-trail \
  --name OrgAuditTrail \
  --query 'Trail.{MultiRegion:IsMultiRegionTrail,GlobalServiceEvents:IncludeGlobalServiceEvents}'

Política de bucket do S3 para registros do CloudTrail

O CloudTrail exige uma política específica de bucket do S3 que conceda ao principal de serviço do CloudTrail (cloudtrail.amazonaws.com) permissão para chamar GetBucketAcl e PutObject no bucket. A AWS impõe que o bucket não seja acessível publicamente e que a propriedade dos objetos esteja definida como Bucket Owner Enforced. Nunca armazene registros do CloudTrail no mesmo bucket usado pelo seu aplicativo — isso cria uma dependência circular na qual o acesso aos registros de auditoria é interrompido se o bucket do aplicativo for bloqueado.

# Minimum S3 bucket policy for CloudTrail (abbreviated)
# {
#   "Version": "2012-10-17",
#   "Statement": [
#     {
#       "Sid": "AWSCloudTrailAclCheck",
#       "Effect": "Allow",
#       "Principal": {"Service": "cloudtrail.amazonaws.com"},
#       "Action": "s3:GetBucketAcl",
#       "Resource": "arn:aws:s3:::my-cloudtrail-logs-111122223333"
#     },
#     {
#       "Sid": "AWSCloudTrailWrite",
#       "Effect": "Allow",
#       "Principal": {"Service": "cloudtrail.amazonaws.com"},
#       "Action": "s3:PutObject",
#       "Resource": "arn:aws:s3:::my-cloudtrail-logs-111122223333/AWSLogs/111122223333/*",
#       "Condition": {"StringEquals": {"s3:x-amz-acl": "bucket-owner-full-control"}}
#     }
#   ]
# }

Trails da organização

Em uma AWS Organisation, você pode criar um Trail da organização a partir da conta de gerenciamento, aplicando-o automaticamente a todas as contas-membro — atuais e futuras. As contas-membro não podem modificar nem excluir o Trail da organização, garantindo que a cobertura de auditoria não possa ser evitada. Os Trails da organização entregam registros a um bucket centralizado do S3 com prefixos por conta, permitindo que uma equipe de segurança consulte os registros de auditoria de todas as contas em um único local usando o Athena ou uma ferramenta de SIEM.

# Create an organisation trail from the management account
aws cloudtrail create-trail \
  --name OrgCentralTrail \
  --s3-bucket-name central-org-cloudtrail-logs \
  --is-multi-region-trail \
  --is-organization-trail \
  --include-global-service-events \
  --enable-log-file-validation

aws cloudtrail start-logging --name OrgCentralTrail

Integração com o Athena para análise de registros

Os registros do CloudTrail entregues ao S3 estão no formato JSON. Você pode usar a integração do Amazon Athena no console do CloudTrail para criar automaticamente uma tabela do Glue particionada por conta, Região e data. Isso permite consultar meses de histórico de APIs usando SQL padrão, sem carregar os dados em um banco de dados. Faça a partição por data nas suas consultas (WHERE year='2024' AND month='01') para evitar varreduras completas da tabela e controlar os custos do Athena.

-- Query CloudTrail logs in Athena for IAM policy changes in January 2024
SELECT
  eventtime,
  useridentity.arn AS principal,
  eventname,
  requestparameters
FROM cloudtrail_logs_111122223333
WHERE year = '2024'
  AND month = '01'
  AND eventsource = 'iam.amazonaws.com'
  AND eventname IN ('PutUserPolicy','AttachRolePolicy','CreateUser')
ORDER BY eventtime DESC
LIMIT 100;

Consultar o histórico de eventos vs. logs da trilha

Há duas maneiras de pesquisar registros do CloudTrail: o Histórico de eventos no console (últimos 90 dias, somente eventos de gerenciamento e filtros limitados) e os logs da trilha no S3/Athena (retenção ilimitada, incluindo eventos de dados e todo o poder do SQL). Em questões de exame: se a pergunta solicitar a investigação de um evento com mais de 90 dias ou a consulta de eventos do plano de dados (S3 GetObject, Lambda Invoke), recomende sempre consultar os logs da trilha por meio do Athena. Se a pergunta solicitar a abordagem mais simples para investigar um evento de gerenciamento recente, o Histórico de eventos será suficiente.

Principais informações sobre o CloudTrail para o exame

Memorize estas informações para o exame SAA-C03: o CloudTrail não é em tempo real — pode levar até 15 minutos para entregar eventos ao S3 (use o CloudWatch Logs para alertas quase em tempo real). O Histórico de eventos abrange 90 dias e inclui somente eventos de gerenciamento. Os eventos de dados precisam ser habilitados explicitamente e geram custos adicionais. A validação de arquivos de log usa hashes SHA-256 para detectar adulterações. Os eventos de serviços globais (IAM, STS, Route 53) aparecem somente em us-east-1. As trilhas da organização não podem ser desabilitadas pelas contas-membro.

Verificação rápida

Teste sua compreensão dos conceitos de AWS Solutions Architect (SAA-C03) desta lição.

Recapitulação da lição

Nesta lição, você aprendeu que: o Histórico de eventos oferece acesso gratuito a eventos de gerenciamento dos últimos 90 dias; as trilhas fornecem entrega contínua ao S3, com retenção configurável e eventos de dados opcionais; e as trilhas da organização se aplicam a todas as contas-membro e não podem ser desabilitadas por elas. A seguir, exploraremos o CloudTrail Insights e a verificação da integridade dos arquivos de log.

Perguntas Frequentes

A aula “Trilhas e histórico de eventos do CloudTrail” é grátis?

Sim — o texto completo de “Trilhas e histórico de eventos do CloudTrail” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Cloud & IT Cert Prep, atualize para CoddyKit PRO. O curso de Cloud & IT Cert Prep inclui 4 aulas no total.

O que vou aprender em “Trilhas e histórico de eventos do CloudTrail”?

Crie trilhas de eventos de gerenciamento e de dados, entregue registros ao S3 e ao CloudWatch Logs e pesquise o histórico de eventos dos últimos 90 dias no console. Você pratica Cloud & IT Cert Prep com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Cloud & IT Cert Prep?

Nenhuma experiência prévia é necessária. Cloud & IT Cert Prep no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 1 de 4.

Quanto tempo leva a aula “Trilhas e histórico de eventos do CloudTrail”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Cloud & IT Cert Prep?

Sim. Cada aula de Cloud & IT Cert Prep inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Trilhas e histórico de eventos do CloudTrail
  2. CloudTrail Insights e integridade dos arquivos de registro
  3. Regras e correção do AWS Config
  4. Pacotes de conformidade e trilhas da Organização
← Voltar para Cloud & IT Cert Prep