É possível enriquecer eventos do CloudTrail adicionando chaves de tags de recurso e chaves de condição globais do IAM
Você pode enriquecer eventos de gerenciamento e eventos de dados do CloudTrail adicionando chaves de tag de recursos, chaves de tag de entidade principal e chaves de condição globais do IAM ao criar ou atualizar um datastore de eventos. Isso permite categorizar, pesquisar e analisar eventos do CloudTrail com base no contexto dos negócios, como alocação de custos e gerenciamento financeiro, operações e requisitos de segurança de dados. Você pode analisar eventos executando consultas no CloudTrail Lake. Você também pode optar por federar seu datastore de eventos e executar consultas no Amazon Athena. Você pode adicionar chaves de tag de recursos e chaves de condição globais do IAM a um datastore de eventos usando o console do CloudTrail, a AWS CLI e SDKS.
nota
As tags de recurso que você adiciona após a criação ou as atualizações dos recursos podem sofrer um atraso antes de serem refletidas nos eventos do CloudTrail. Os eventos do CloudTrail de exclusões de recursos podem não incluir informações de tag.
As chaves de condição global do IAM sempre estarão visíveis na saída de uma consulta, mas talvez não estejam visíveis para o proprietário do recurso.
Se você adicionar chaves de tags de recurso para enriquecer eventos, o CloudTrail incluirá as chaves de tag selecionadas com os recursos envolvidos na chamada de API.
Se você adicionar chaves de condição globais do IAM em um datastore de eventos, o CloudTrail incluirá informações sobre as chaves de condição selecionadas que foram avaliadas durante o processo de autorização, incluindo detalhes adicionais sobre a entidade principal, a sessão e a solicitação em si.
nota
Configurar o CloudTrail para incluir uma chave de condição ou uma tag de entidade principal não significa que essa chave de condição ou tag de entidade principal estará presente em todos os eventos. Por exemplo, se você configurou o CloudTrail para incluir uma chave de condição global específica, mas não a vê em um determinado evento, isso indica que a chave não era relevante para a avaliação da política do IAM para aquela ação.
Depois que você adiciona chaves de tag de recursos ou chaves de condição do IAM, o CloudTrail inclui um campo eventContext nos eventos do CloudTrail que fornece as informações contextuais selecionadas para a ação de API.
Há algumas exceções quando o evento não incluirá o campo eventContext, incluindo as seguintes:
-
Os eventos da API relacionados a recursos excluídos poderão ter ou não ter tags de recurso.
-
O campo
eventContextnão terá dados para eventos atrasados e não estará presente para eventos que foram atualizados após a chamada de API. Por exemplo, se houver um atraso ou interrupção no Amazon EventBridge, as tags de evento poderão permanecer desatualizadas por algum tempo após a interrupção ser resolvida. Alguns serviços da AWS sofrerão atrasos maiores. Para obter mais informações, consulte Atualizações de tags de recurso no CloudTrail para eventos enriquecidos. -
Se você modificar ou excluir um perfil vinculado ao serviço AWSServiceRoleForCloudTrailEventContext usado para eventos enriquecidos, o CloudTrail não preencherá nenhuma tag de recurso no
eventContext.
nota
O campo eventContext está presente apenas em eventos de datastores de eventos configurados para incluir chaves de tags de recurso, chaves de tags de entidade principal e chaves de condição globais do IAM. Eventos entregues ao Histórico de eventos, Amazon EventBridge, visíveis com o comando lookup-events da AWS CLI e entregues às trilhas, não incluirão o campo eventContext.
Tópicos
Serviços da AWS compatíveis com tags de recurso
Todos os Serviços da AWS são compatíveis com tags de recurso. Para obter mais informações, consulte Serviços compatíveis com o AWS Resource Groups Tagging API.
Atualizações de tags de recurso no CloudTrail para eventos enriquecidos
Quando configurado para tal, o CloudTrail captura informações sobre tags de recurso e as usa para fornecer informações em eventos enriquecidos. Ao trabalhar com tags de recurso, há certas condições nas quais uma tag de recurso pode não ser refletida com precisão no momento da solicitação de eventos do sistema. Durante a operação padrão, as tags aplicadas no momento da criação do recurso estão sempre presentes e sofrerão um atraso mínimo ou nenhum atraso. Porém, espera-se que os seguintes serviços tenham atrasos em alterações de tag de recurso que aparecem nos eventos do CloudTrail:
Amazon Chime Voice Connector
AWS CloudTrail
Conexões de código da AWS
Amazon DynamoDB
Amazon ElastiCache
Amazon Keyspaces (para Apache Cassandra)
Amazon Kinesis
Amazon Lex
Amazon MemoryDB
Amazon S3
Amazon Security Lake
AWS Direct Connect
AWS IAM Identity Center
AWS Key Management Service
AWS Lambda
AWS Marketplace Vendor Insights
AWS Organizations
AWS Payment Cryptography
Amazon Simple Queue Service
Interrupções no serviço também podem causar atrasos nas atualizações das informações de tags de recurso. No caso de um atraso por interrupção do serviço, os eventos subsequentes do CloudTrail incluirão um addendum campo com informações sobre a alteração da tag do recurso. Essas informações adicionais serão usadas conforme especificado para fornecer CloudTrailEvents enriquecidos.
Serviços da AWS compatíveis com chaves de condição globais do IAM
Os seguintes Serviços da AWS são compatíveis com as chaves de condição globais do IAM para eventos enriquecidos:
-
AWS Certificate Manager
-
AWS CloudTrail
-
Amazon CloudWatch
-
Amazon CloudWatch Logs
-
AWS CodeBuild
-
AWS CodeCommit
-
AWS CodeDeploy
-
Amazon Cognito Sync
-
Amazon Comprehend
-
Amazon Comprehend Medical
-
Amazon Connect Voice ID
-
AWS Control Tower
-
Amazon Data Firehose
-
Amazon Elastic Block Store
-
Elastic Load Balancing
-
AWS End User Messaging Social
-
Amazon EventBridge
-
Agendador do Amazon EventBridge
-
Amazon Data Firehose
-
Amazon FSx
-
AWS HealthImaging
-
AWS IoT Events
-
AWS IoT FleetWise
-
AWS IoT SiteWise
-
AWS IoT TwinMaker
-
AWS IoT Wireless
-
Amazon Kendra
-
AWS KMS
-
AWS Lambda
-
AWS License Manager
-
Amazon Lookout for Equipment
-
Amazon Lookout for Vision
-
AWS Network Firewall
-
AWS Payment Cryptography
-
Amazon Personalize
-
AWS Proton
-
Amazon Rekognition
-
Amazon SageMaker AI
-
AWS Secrets Manager
-
Amazon Simple Email Service (Amazon SES)
-
Amazon Simple Notification Service (Amazon SNS)
-
Amazon SQS
-
AWS Step Functions
-
AWS Storage Gateway
-
Amazon SWF
-
Cadeia de Suprimentos AWS
-
Amazon Timestream
-
Amazon Timestream para InfluxDB
-
Amazon Transcribe
-
AWS Transfer Family
-
AWS Trusted Advisor
-
Amazon WorkSpaces
-
AWS X-Ray
Chaves de condição globais compatíveis com eventos enriquecidos
A tabela a seguir lista as chaves de condição globais do IAM compatíveis com eventos enriquecidos do CloudTrail, com exemplos de valores:
| Chave | Valor de exemplo |
|---|---|
aws:FederatedProvider |
“IdP” |
aws:TokenIssueTime |
“123456789” |
aws:MultiFactorAuthAge |
“99” |
aws:MultiFactorAuthPresent |
"true" |
aws:SourceIdentity |
"UserName" |
aws:PrincipalAccount |
“111122223333” |
aws:PrincipalArn |
“arn:aws:iam::555555555555:role/myRole” |
aws:PrincipalIsAWSService |
"false" |
aws:PrincipalOrgID |
“o-rganization” |
aws:PrincipalOrgPaths |
[“o-rganization/path-of-org”] |
aws:PrincipalServiceName |
“cloudtrail.amazonaws.com” |
aws:PrincipalServiceNamesList |
[“cloudtrail.amazonaws.com",“s3.amazonaws.com”] |
aws:PrincipalType |
“AssumedRole” |
aws:userid |
“userid” |
aws:username |
"nome de usuário" |
aws:RequestedRegion |
us-east-2" |
aws:SecureTransport |
"true" |
aws:ViaAWSService |
"false" |
aws:CurrentTime |
“2025-04-30 15:30:00” |
aws:EpochTime |
“1.746.049.800” |
aws:SourceAccount |
“111.111.111.111” |
aws:SourceOrgID |
“o-rganization” |
Exemplos de evento
No exemplo a seguir, o campo eventContext inclui a chave de condição global do IAM aws:ViaAWSService com um valor de false, que indica que a chamada de API não foi feita por um AWS service (Serviço da AWS).
{ "eventVersion": "1.11", "userIdentity": { "type": "AssumedRole", "principalId": "ASIAIOSFODNN7EXAMPLE", "arn": "arn:aws:sts::123456789012:assumed-role/admin", "accountId": "123456789012", "accessKeyId": "ASIAIOSFODNN7EXAMPLE", "sessionContext": { "sessionIssuer": { "type": "Role", "principalId": "ASIAIOSFODNN7EXAMPLE", "arn": "arn:aws:iam::123456789012:role/admin", "accountId": "123456789012", "userName": "admin" }, "attributes": { "creationDate": "2025-01-22T22:05:56Z", "mfaAuthenticated": "false" } } }, "eventTime": "2025-01-22T22:06:16Z", "eventSource": "cloudtrail.amazonaws.com", "eventName": "GetTrailStatus", "awsRegion": "us-east-1", "sourceIPAddress": "192.168.0.0", "userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:133.0) Gecko/20100101 Firefox/133.0", "requestParameters": { "name": "arn:aws:cloudtrail:us-east-1:123456789012:trail/myTrail" }, "responseElements": null, "requestID": "d09c4dd2-5698-412b-be7a-example1a23", "eventID": "9cb5f426-7806-46e5-9729-exampled135d", "readOnly": true, "eventType": "AwsApiCall", "managementEvent": true, "recipientAccountId": "123456789012", "eventCategory": "Management", "tlsDetails": { "tlsVersion": "TLSv1.3", "cipherSuite": "TLS_AES_128_GCM_SHA256", "clientProvidedHostHeader": "cloudtrail.us-east-1.amazonaws.com" }, "sessionCredentialFromConsole": "true", "eventContext": { "requestContext": { "aws:ViaAWSService": "false" }, "tagContext": {} } }