Selecione suas preferências de cookies

Usamos cookies essenciais e ferramentas semelhantes que são necessárias para fornecer nosso site e serviços. Usamos cookies de desempenho para coletar estatísticas anônimas, para que possamos entender como os clientes usam nosso site e fazer as devidas melhorias. Cookies essenciais não podem ser desativados, mas você pode clicar em “Personalizar” ou “Recusar” para recusar cookies de desempenho.

Se você concordar, a AWS e terceiros aprovados também usarão cookies para fornecer recursos úteis do site, lembrar suas preferências e exibir conteúdo relevante, incluindo publicidade relevante. Para aceitar ou recusar todos os cookies não essenciais, clique em “Aceitar” ou “Recusar”. Para fazer escolhas mais detalhadas, clique em “Personalizar”.

Exemplo de consultas de log do CloudTrail

Modo de foco
Exemplo de consultas de log do CloudTrail - Amazon Athena

O exemplo a seguir mostra a parte de uma consulta que retorna todas as solicitações anônimas (não assinadas) da tabela criada para os logs de eventos do CloudTrail. Essa consulta seleciona as solicitações em que useridentity.accountid são anônimos e useridentity.arn não é especificado:

SELECT * FROM cloudtrail_logs WHERE eventsource = 's3.amazonaws.com' AND eventname in ('GetObject') AND useridentity.accountid = 'anonymous' AND useridentity.arn IS NULL AND requestparameters LIKE '%[your bucket name ]%';

Para obter mais informações, consulte a publicação no Blog de Big Data da AWS, Análise de segurança, conformidade e atividades operacionais usando o AWS CloudTrail e o Amazon Athena.

Consulta de campos aninhados nos logs do CloudTrail

Como os campos userIdentity e resources são tipos de dados aninhados, é necessário um tratamento especial para consultá-los.

O objeto userIdentity consiste em tipos STRUCT aninhados. É possível consultá-los usando um ponto para separar os campos, como no seguinte exemplo:

SELECT eventsource, eventname, useridentity.sessioncontext.attributes.creationdate, useridentity.sessioncontext.sessionissuer.arn FROM cloudtrail_logs WHERE useridentity.sessioncontext.sessionissuer.arn IS NOT NULL ORDER BY eventsource, eventname LIMIT 10

O campo resources é um array de objetos STRUCT. Para esses arrays, use CROSS JOIN UNNEST para remover o aninhamento do array de modo que você possa consultar seus objetos.

O exemplo a seguir retorna todas as linhas em que o ARN do recurso termina com example/datafile.txt. Para legibilidade, a função replace remove a substring inicial arn:aws:s3::: do ARN.

SELECT awsregion, replace(unnested.resources_entry.ARN,'arn:aws:s3:::') as s3_resource, eventname, eventtime, useragent FROM cloudtrail_logs t CROSS JOIN UNNEST(t.resources) unnested (resources_entry) WHERE unnested.resources_entry.ARN LIKE '%example/datafile.txt' ORDER BY eventtime

Veja a seguir exemplos de consultas de eventos DeleteBucket. A consulta extrai do objeto resources o nome do bucket e o ID da conta à qual o bucket pertence.

SELECT awsregion, replace(unnested.resources_entry.ARN,'arn:aws:s3:::') as deleted_bucket, eventtime AS time_deleted, useridentity.username, unnested.resources_entry.accountid as bucket_acct_id FROM cloudtrail_logs t CROSS JOIN UNNEST(t.resources) unnested (resources_entry) WHERE eventname = 'DeleteBucket' ORDER BY eventtime

Para obter mais informações sobre como remover o aninhamento, consulte Filtrar matrizes.

Dicas para consultar logs do CloudTrail

Considere o seguinte ao explorar dados do log do CloudTrail:

  • Antes de consultar os logs, verifique se a tabela de logs tem a mesma aparência da tabela em Criar uma tabela de logs do CloudTrail no Athena usando particionamento manual. Se não for a primeira tabela, exclua a tabela existente usando o seguinte comando: DROP TABLE cloudtrail_logs.

  • Depois de ignorar a tabela existente, recrie-a. Para ter mais informações, consulte Criar uma tabela de logs do CloudTrail no Athena usando particionamento manual.

    Verifique se os campos na consulta do Athena estão listados corretamente. Para obter informações sobre a lista completa de campos em um registro do CloudTrail, consulte Conteúdo do registro do CloudTrail.

    Se a consulta incluir campos em formatos JSON, como STRUCT, extraia dados de JSON. Para ter mais informações, consulte Extrair dados JSON de strings.

    Algumas sugestões para realizar consultas em sua tabela do CloudTrail:

  • Comece observando quais usuários do chamaram quais operações da API e de quais endereços IP de origem.

  • Use a consulta SQL básica a seguir como o modelo. Cole a consulta no console do Athena e execute-a.

    SELECT useridentity.arn, eventname, sourceipaddress, eventtime FROM cloudtrail_logs LIMIT 100;
  • Modifique a consulta para explorar ainda mais seus dados.

  • Para melhorar a performance, inclua a cláusula LIMIT para retornar um subconjunto especificado de linhas.

PrivacidadeTermos do sitePreferências de cookies
© 2025, Amazon Web Services, Inc. ou suas afiliadas. Todos os direitos reservados.