Filtrar todos os eventos de dados utilizando seletores de eventos avançados - 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á.

Filtrar todos os eventos de dados utilizando seletores de eventos avançados

Esta seção descreve como usar seletores de eventos avançados para criar seletores refinados, que ajudam a controlar os custos registrando em log apenas os eventos específicos de interesse para seus casos de uso.

Por exemplo:

  • Você pode incluir ou excluir API chamadas específicas adicionando um filtro no eventName campo.

  • Você pode incluir ou excluir registros em log de recursos específicos adicionando um filtro no campo resources.ARN. Por exemplo, se você estivesse registrando em log eventos de dados do S3, poderia excluir o registro do bucket do S3 para sua trilha.

  • Você pode optar por registrar apenas eventos somente gravação ou eventos somente leitura adicionando um filtro no campo readOnly.

A tabela a seguir fornece informações adicionais sobre os campos configuráveis para seletores de eventos avançados.

Campo Obrigatório Operadores válidos Descrição

eventCategory

Sim

Equals

Esse campo é definido como Data para registrar eventos de dados.

Suportado em trilhas: Sim

Compatível com armazenamentos de dados de eventos: Sim

resources.type

Sim

Equals

Esse campo é usado para selecionar o tipo de recurso para o qual você deseja registrar eventos de dados. A tabela Eventos de dados mostra os valores possíveis.

Suportado em trilhas: Sim

Compatível com armazenamentos de dados de eventos: Sim

readOnly

Não

Equals

Esse é um campo opcional usado para incluir ou excluir eventos de dados com base no valor de readOnly. Um valor de true registra eventos somente leitura. Um valor de false registra eventos somente gravação. Se você não adicionar esse campo, CloudTrail registrará os eventos de leitura e gravação.

Suportado em trilhas: Sim

Compatível com armazenamentos de dados de eventos: Sim

eventName

Não

EndsWith

Equals

NotEndsWith

NotEquals

NotStartsWith

StartsWith

Esse é um campo opcional usado para filtrar ou filtrar qualquer evento de dados registrado, como ou. CloudTrail PutBucket GetSnapshotBlock

Se você estiver usando o AWS CLI, você pode especificar vários valores separando cada valor com uma vírgula.

Se você estiver usando o console, poderá especificar vários valores criando uma condição para cada eventName que deseja filtrar.

Suportado em trilhas: Sim

Compatível com armazenamentos de dados de eventos: Sim

resources.ARN

Não

EndsWith

Equals

NotEndsWith

NotEquals

NotStartsWith

StartsWith

Esse é um campo opcional usado para excluir ou incluir eventos de dados para um recurso específico fornecendo o resources.ARN. Você pode usar qualquer operador comresources.ARN, mas se usar Equals ouNotEquals, o valor deve corresponder exatamente ao ARN de um recurso válido para o que resources.type você especificou. Para registrar todos os eventos de dados de todos os objetos em um bucket específico do S3, use o StartsWith operador e inclua somente o bucket ARN como valor correspondente.

Se você estiver usando o AWS CLI, você pode especificar vários valores separando cada valor com uma vírgula.

Se você estiver usando o console, poderá especificar vários valores criando uma condição para cada resources.ARN que deseja filtrar.

Suportado em trilhas: Sim

Compatível com armazenamentos de dados de eventos: Sim

eventSource

Não

EndsWith

Equals

NotEndsWith

NotEquals

NotStartsWith

StartsWith

Você pode usá-lo para incluir ou excluir fontes de eventos específicas. Normalmente, eventSource é uma forma abreviada do nome do serviço sem mais espaços.amazonaws.com. Por exemplo, você pode configurar eventSource Equals ec2.amazonaws.com para registrar somente eventos de EC2 dados da Amazon.

Suportado em trilhas: Não

Compatível com armazenamentos de dados de eventos: Sim

eventType

Não

EndsWith

Equals

NotEndsWith

NotEquals

NotStartsWith

StartsWith

O eventTypepara incluir ou excluir. Por exemplo, você pode definir esse campo NotEquals AwsServiceEvent para excluir AWS service (Serviço da AWS) eventos.

Suportado em trilhas: Não

Compatível com armazenamentos de dados de eventos: Sim

sessionCredentialFromConsole

Não

Equals

NotEquals

Inclua ou exclua eventos originados de uma AWS Management Console sessão. Esse campo pode ser definido como Equals ou NotEquals com um valor detrue.

Suportado em trilhas: Não

Compatível com armazenamentos de dados de eventos: Sim

userIdentity.arn

Não

EndsWith

Equals

NotEndsWith

NotEquals

NotStartsWith

StartsWith

Inclua ou exclua eventos para ações tomadas por IAM identidades específicas. Para obter mais informações, consulte o CloudTrail userIdentity elemento.

Suportado em trilhas: Não

Compatível com armazenamentos de dados de eventos: Sim

Para registrar eventos de dados usando o CloudTrail console, você escolhe a opção Eventos de dados e, em seguida, seleciona o tipo de recurso de interesse ao criar ou atualizar um armazenamento de dados de trilhas ou eventos. A tabela de eventos de dados mostra os tipos de recursos possíveis que você pode escolher no CloudTrail console.

Seleção do tipo de recurso do SNStópico no console.

Para registrar eventos de dados com o AWS CLI, configure o --advanced-event-selector parâmetro para definir o valor eventCategory igual Data e igual ao resources.type valor do tipo de recurso para o qual você deseja registrar eventos de dados. A tabela Eventos de dados lista os tipos de recursos disponíveis.

Por exemplo, se você quisesse registrar eventos de dados para todos os bancos de identidades do Cognito, você configuraria o parâmetro --advanced-event-selectors para ter a seguinte aparência:

--advanced-event-selectors '[ { "Name": "Log Cognito data events on Identity pools", "FieldSelectors": [ { "Field": "eventCategory", "Equals": ["Data"] }, { "Field": "resources.type", "Equals": ["AWS::Cognito::IdentityPool"] } ] } ]'

O exemplo anterior registra todos os eventos de dados do Cognito nos bancos de identidades. Você pode refinar ainda mais os seletores de eventos avançados para filtrar os campos eventName, readOnly e resources.ARN para registrarem ou excluírem eventos específicos de interesse ou não.

É possível configurar seletores de eventos avançados para filtrar eventos de dados com base em vários campos. Por exemplo, você pode configurar seletores de eventos avançados para registrar todas as chamadas DeleteObject API e o Amazon PutObject S3, mas excluir o registro de eventos para um bucket específico do S3, conforme mostrado no exemplo a seguir. Substitua amzn-s3-demo-bucket pelo nome do seu bucket.

--advanced-event-selectors '[ { "Name": "Log PutObject and DeleteObject events for all but one bucket", "FieldSelectors": [ { "Field": "eventCategory", "Equals": ["Data"] }, { "Field": "resources.type", "Equals": ["AWS::S3::Object"] }, { "Field": "eventName", "Equals": ["PutObject","DeleteObject"] }, { "Field": "resources.ARN", "NotStartsWith": ["arn:aws:s3:::amzn-s3-demo-bucket/"] } ] } ]'

Você também pode incluir várias condições para um campo. Para obter informações sobre como várias condições são avaliadas, consulte Como CloudTrail avalia várias condições para um campo.

É possível usar seletores de eventos avançados para registrar eventos de gerenciamento e de dados. Para registrar eventos de dados de vários tipos de recursos, adicione uma instrução no seletor de campo para cada tipo de recurso para o qual você deseja registrar eventos de dados.

nota

As trilhas podem usar seletores de eventos avançados ou seletores de eventos básicos, mas não ambos. Se você aplicar seletores de eventos avançados a uma trilha, todos os seletores de eventos básicos existentes serão substituídos.

Os seletores não suportam o uso de curingas, como. * Para combinar vários valores com uma única condição, você pode usarStartsWith,, EndsWithNotStartsWith, ou NotEndsWith para corresponder explicitamente ao início ou ao fim do campo do evento.

Como CloudTrail avalia várias condições para um campo

Para seletores de eventos avançados, CloudTrail avalia várias condições para um campo da seguinte forma:

  • DESELECTos operadores AND estão juntos. Se alguma das condições do DESELECT operador for atendida, o evento não será entregue. Estes são os DESELECT operadores válidos para seletores de eventos avançados:

    • NotEndsWith

    • NotEquals

    • NotStartsWith

  • SELECTos operadores são submetidos a OR juntos. Estes são os SELECT operadores válidos para seletores de eventos avançados:

    • EndsWith

    • Equals

    • StartsWith

  • As combinações de DESELECT operadores SELECT e seguem as regras acima e os dois grupos são AND unidos.

Exemplo mostrando várias condições para o campo resources.ARN

O exemplo de instrução do seletor de eventos a seguir coleta eventos de dados do tipo de recurso AWS::S3::Object e aplica várias condições no campo resources.ARN.

{ "Name": "S3Select", "FieldSelectors": [ { "Field": "eventCategory", "Equals": [ "Data" ] }, { "Field": "resources.type", "Equals": [ "AWS::S3::Object" ] }, { "Field": "resources.ARN", "Equals": [ "arn:aws:s3:::amzn-s3-demo-bucket/object1" ], "StartsWith": [ "arn:aws:s3:::amzn-s3-demo-bucket/" ], "EndsWith": [ "object3" ], "NotStartsWith": [ "arn:aws:s3:::amzn-s3-demo-bucket/deselect" ], "NotEndsWith": [ "object5" ], "NotEquals": [ "arn:aws:s3:::amzn-s3-demo-bucket/object6" ] } ] }

No exemplo anterior, os eventos de dados do Amazon S3 para o recurso AWS::S3::Object serão entregues se:

  1. Nenhuma dessas condições do DESELECT operador é atendida:

    • o campo resources.ARN NotStartsWith com o valor arn:aws:s3:::amzn-s3-demo-bucket/deselect

    • o campo resources.ARN NotEndsWith com o valor object5

    • o campo resources.ARN NotEquals com o valor arn:aws:s3:::amzn-s3-demo-bucket/object6

  2. Pelo menos uma dessas condições do SELECT operador é atendida:

    • o campo resources.ARN Equals com o valor arn:aws:s3:::amzn-s3-demo-bucket/object1

    • o campo resources.ARN StartsWith com o valor arn:aws:s3:::amzn-s3-demo-bucket/

    • o campo resources.ARN EndsWith com o valor object3

Com base na lógica de avaliação:

  1. Os eventos de dados do amzn-s3-demo-bucket/object1 serão entregues porque correspondem ao valor do operador Equals e não correspondem a nenhum dos valores dos operadores NotStartsWith, NotEndsWith e NotEquals.

  2. O evento de dados do amzn-s3-demo-bucket/object2 será entregue porque corresponde ao valor do operador StartsWith e não corresponde a nenhum dos valores dos operadores NotStartsWith, NotEndsWith e NotEquals.

  3. Os eventos de dados do amzn-s3-demo-bucket1/object3 serão entregues porque correspondem ao operador EndsWith e não correspondem a nenhum dos valores dos operadores NotStartsWith, NotEndsWith e NotEquals.

  4. Os eventos de dados do arn:aws:s3:::amzn-s3-demo-bucket/deselectObject4 não serão entregues porque correspondem à condição NotStartsWith, embora correspondam à condição do operador StartsWith.

  5. Os eventos de dados do arn:aws:s3:::amzn-s3-demo-bucket/object5 não serão entregues porque correspondem à condição NotEndsWith, embora correspondam à condição do operador StartsWith.

  6. Os eventos de dados do arn:aws:s3:::amzn-s3-demo-bucket/object6 não serão entregues porque correspondem à condição do operador NotEquals, embora correspondam à condição do operador StartsWith.

Filtrar eventos de dados por eventName

Usando seletores de eventos avançados, você pode incluir ou excluir eventos com base no valor do campo eventName. A filtragem do eventName pode ajudar a controlar os custos, pois você evita incorrer em custos ao AWS service (Serviço da AWS) registrar eventos de dados para adicionar suporte a novos dados. APIs

Você pode usar qualquer operador com o campo eventName. Você pode usá-lo para filtrar ou filtrar qualquer evento de dados registrado, como ou. CloudTrail PutBucket GetSnapshotBlock

Filtrando eventos de dados eventName usando o AWS Management Console

Siga as etapas a seguir para filtrar no eventName campo usando o CloudTrail console.

  1. Siga as etapas do procedimento criar trilha ou siga as etapas do procedimento criar armazenamento de dados de eventos.

  2. À medida que você seguir as etapas para criar a trilha ou o armazenamento de dados de eventos, selecione o seguinte:

    1. Escolha Eventos de dados.

    2. Escolha o tipo de recurso para o qual você deseja registrar eventos de dados.

    3. Para o Modelo do seletor de log, escolha Personalizado.

    4. (Opcional) Em Nome do seletor, insira um nome para identificar o seletor. O nome do seletor é um nome descritivo para um seletor de eventos avançado, como "Registrar eventos de dados em log para apenas dois buckets do S3". O nome do seletor é listado como Name no seletor de eventos avançado e pode ser visualizado se você expandir a exibição. JSON

    5. Em Seletores de eventos avançados, faça o seguinte para filtrar pelo eventName:

      1. Em Campo, escolha eventName.

      2. Em Operador, escolha o operador de condição. Neste exemplo, escolheremos equals porque queremos registrar uma chamada específicaAPI.

      3. Em Valor, insira o nome do evento que você deseja filtrar.

      4. Para filtrar por outro eventName, escolha + Condição. Para obter informações sobre como CloudTrail avalia várias condições, consulteComo CloudTrail avalia várias condições para um campo.

      Filtrar eventos de dados do S3 por eventName
    6. Escolha +Campo para adicionar filtros em outros campos.

Filtrando eventos de dados eventName usando o AWS CLI

Usando o AWS CLI, você pode filtrar no eventName campo para incluir ou excluir eventos específicos.

Se você estiver atualizando uma trilha ou um armazenamento de dados de eventos existente para registrar seletores de eventos adicionais, obtenha os seletores de eventos atuais executanto o comando get-event-selectors para uma trilha ou o comando get-event-data-store para um armazenamento de dados de eventos. Em seguida, atualize seus seletores de eventos para adicionar um seletor de campo para cada tipo de recurso de dados que você deseja registrar.

O exemplo a seguir registra eventos de dados do S3 em uma trilha. Eles --advanced-event-selectors são configurados para registrar somente eventos de dados para as DeleteObject API chamadas GetObjectPutObject, e.

aws cloudtrail put-event-selectors \ --trail-name trailName \ --advanced-event-selectors '[ { "Name": "Log GetObject, PutObject and DeleteObject S3 data events", "FieldSelectors": [ { "Field": "eventCategory", "Equals": ["Data"] }, { "Field": "resources.type", "Equals": ["AWS::S3::Object"] }, { "Field": "eventName", "Equals": ["GetObject","PutObject","DeleteObject"] } ] } ]'

O próximo exemplo cria um novo armazenamento de dados de eventos que registra eventos de dados para o EBS DirectAPIs, mas exclui as ListChangedBlocks API chamadas. Você pode usar o update-event-data-storecomando para atualizar um armazenamento de dados de eventos existente.

aws cloudtrail create-event-data-store \ --name "eventDataStoreName" --advanced-event-selectors '[ { "Name": "Log all EBS Direct API data events except ListChangedBlocks", "FieldSelectors": [ { "Field": "eventCategory", "Equals": ["Data"] }, { "Field": "resources.type", "Equals": ["AWS::EC2::Snapshot"] }, { "Field": "eventName", "NotEquals": ["ListChangedBlocks"] } ] } ]'

Filtrar eventos de dados por resources.ARN

Usando seletores de eventos avançados, você pode filtrar pelo valor do campo resources.ARN.

Você pode usar qualquer operador comresources.ARN, mas se usar Equals ouNotEquals, o valor deve corresponder exatamente ao ARN de um recurso válido para o resources.type valor que você especificou. Para registrar todos os eventos de dados de todos os objetos em um bucket específico do S3, use o StartsWith operador e inclua somente o bucket ARN como valor correspondente.

A tabela a seguir mostra o ARN formato válido para cada umresources.type.

nota

Você não pode usar o resources.ARN campo para filtrar tipos de recursos que não têmARNs.

resources.type recursos. ARN
AWS::DynamoDB::Table1
arn:partition:dynamodb:region:account_ID:table/table_name
AWS::Lambda::Function
arn:partition:lambda:region:account_ID:function:function_name

AWS::S3::Object2

arn:partition:s3:::amzn-s3-demo-bucket/ arn:partition:s3:::amzn-s3-demo-bucket/object_or_file_name/
AWS::AIOps::InvestigationGroup
arn:partition:aiops:region:account_ID:investigation-group/investigation_group_ID
AWS::AppConfig::Configuration
arn:partition:appconfig:region:account_ID:application/application_ID/environment/environment_ID/configuration/configuration_profile_ID
AWS::AppSync::GraphQL
arn:partition:appsync:region:account_ID:apis/GraphQL_API_ID
AWS::B2BI::Transformer
arn:partition:b2bi:region:account_ID:transformer/transformer_ID
AWS::Backup::SearchJob
arn:partition:backup-search:region:account_ID:search-job/search_job_ID
AWS::Bedrock::AgentAlias
arn:partition:bedrock:region:account_ID:agent-alias/agent_ID/alias_ID
AWS::Bedrock::AsyncInvoke
arn:partition:bedrock:region:account_ID:async-invoke/async_invoke_ID
AWS::Bedrock::FlowAlias
arn:partition:bedrock:region:account_ID:flow/flow_ID/alias/alias_ID
AWS::Bedrock::Guardrail
arn:partition:bedrock:region:account_ID:guardrail/guardrail_ID
AWS::Bedrock::InlineAgent
arn:partition:bedrock:region:account_ID:INLINE_AGENT_UUID
AWS::Bedrock::KnowledgeBase
arn:partition:bedrock:region:account_ID:knowledge-base/knowledge_base_ID
AWS::Bedrock::Model

Eles ARN devem estar em um dos seguintes formatos:

  • arn:partition:bedrock:region::foundation-model/resource_ID

  • arn:partition:bedrock:region:account_ID:provisioned-model/resource_ID

  • arn:partition:bedrock:region:account_ID:custom-model/resource_ID

AWS::Cassandra::Table
arn:partition:cassandra:region:account_ID:keyspace/keyspace_name/table/table_name
AWS::CloudFront::KeyValueStore
arn:partition:cloudfront:region:account_ID:key-value-store/KVS_name
AWS::CloudTrail::Channel
arn:partition:cloudtrail:region:account_ID:channel/channel_UUID
AWS::CodeGuruProfiler::ProfilingGroup
arn:partition:codeguru-profiler:region:account_ID:profilingGroup/profiling_group_name
AWS::CodeWhisperer::Customization
arn:partition:codewhisperer:region:account_ID:customization/customization_ID
AWS::CodeWhisperer::Profile
arn:partition:codewhisperer:region:account_ID:profile/profile_ID
AWS::Cognito::IdentityPool
arn:partition:cognito-identity:region:account_ID:identitypool/identity_pool_ID
AWS::DataExchange::Asset
arn:partition:dataexchange:region:account_ID:data-sets/data_set_ID/revisions/revision_ID/assets/asset_ID
AWS::Deadline::Fleet
arn:partition:deadline:region:account_ID:farm/farm_ID/fleet/fleet_ID
AWS::Deadline::Job
arn:partition:deadline:region:account_ID:farm/farm_ID/queue/queue_ID/job/job_ID
AWS::Deadline::Queue
arn:partition:deadline:region:account_ID:farm/farm_ID/queue/queue_ID
AWS::Deadline::Worker
arn:partition:deadline:region:account_ID:farm/farm_ID/fleet/fleet_ID/worker/worker_ID
AWS::DynamoDB::Stream
arn:partition:dynamodb:region:account_ID:table/table_name/stream/date_time
AWS::EC2::Snapshot
arn:partition:ec2:region::snapshot/snapshot_ID
AWS::EMRWAL::Workspace
arn:partition:emrwal:region:account_ID:workspace/workspace_name
AWS::FinSpace::Environment
arn:partition:finspace:region:account_ID:environment/environment_ID
AWS::Glue::Table
arn:partition:glue:region:account_ID:table/database_name/table_name
AWS::GreengrassV2::ComponentVersion
arn:partition:greengrass:region:account_ID:components/component_name
AWS::GreengrassV2::Deployment
arn:partition:greengrass:region:account_ID:deployments/deployment_ID
AWS::GuardDuty::Detector
arn:partition:guardduty:region:account_ID:detector/detector_ID
AWS::IoT::Certificate
arn:partition:iot:region:account_ID:cert/certificate_ID
AWS::IoT::Thing
arn:partition:iot:region:account_ID:thing/thing_ID
AWS::IoTSiteWise::Asset
arn:partition:iotsitewise:region:account_ID:asset/asset_ID
AWS::IoTSiteWise::TimeSeries
arn:partition:iotsitewise:region:account_ID:timeseries/timeseries_ID
AWS::IoTTwinMaker::Entity
arn:partition:iottwinmaker:region:account_ID:workspace/workspace_ID/entity/entity_ID
AWS::IoTTwinMaker::Workspace
arn:partition:iottwinmaker:region:account_ID:workspace/workspace_ID
AWS::KendraRanking::ExecutionPlan
arn:partition:kendra-ranking:region:account_ID:rescore-execution-plan/rescore_execution_plan_ID
AWS::Kinesis::Stream
arn:partition:kinesis:region:account_ID:stream/stream_name
AWS::Kinesis::StreamConsumer
arn:partition:kinesis:region:account_ID:stream_type/stream_name/consumer/consumer_name:consumer_creation_timestamp
AWS::KinesisVideo::Stream
arn:partition:kinesisvideo:region:account_ID:stream/stream_name/creation_time
AWS::GeoMaps::Provider
arn:partition:geo-maps:region::provider/provider_ID
AWS::GeoPlaces::Provider
arn:partition:geo-places:region::provider/provider_ID
AWS::GeoRoutes::Provider
arn:partition:geo-route:region::provider/provider_ID
AWS::MachineLearning::MlModel
arn:partition:machinelearning:region:account_ID:mlmodel/model_ID
AWS::ManagedBlockchain::Network
arn:partition:managedblockchain:::networks/network_name
AWS::ManagedBlockchain::Node
arn:partition:managedblockchain:region:account_ID:nodes/node_ID
AWS::MedicalImaging::Datastore
arn:partition:medical-imaging:region:account_ID:datastore/data_store_ID
AWS::MWAA::Environment
arn:partition:airflow:region:account_ID:environment/environment_name
AWS::NeptuneGraph::Graph
arn:partition:neptune-graph:region:account_ID:graph/graph_ID
AWS::One::UKey
arn:partition:one:region:account_ID:user/user_ID/u-key/u-key_ID
AWS::One::User
arn:partition:one:region:account_ID:user/user_ID
AWS::PaymentCryptography::Alias
arn:partition:payment-cryptography:region:account_ID:alias/alias
AWS::PaymentCryptography::Key
arn:partition:payment-cryptography:region:account_ID:key/key_ID
AWS::PCAConnectorAD::Connector
arn:partition:pca-connector-ad:region:account_ID:connector/connector_ID
AWS::PCAConnectorSCEP::Connector
arn:partition:pca-connector-scep:region:account_ID:connector/connector_ID
AWS::QApps::QApp
arn:partition:qapps:region:account_ID:application/application_UUID/qapp/qapp_UUID
AWS::QApps::QAppSession
arn:partition:qapps:region:account_ID:application/application_UUID/qapp/qapp_UUID/session/session_UUID
AWS::QBusiness::Application
arn:partition:qbusiness:region:account_ID:application/application_ID
AWS::QBusiness::DataSource
arn:partition:qbusiness:region:account_ID:application/application_ID/index/index_ID/data-source/datasource_ID
AWS::QBusiness::Index
arn:partition:qbusiness:region:account_ID:application/application_ID/index/index_ID
AWS::QBusiness::WebExperience
arn:partition:qbusiness:region:account_ID:application/application_ID/web-experience/web_experienc_ID
AWS::QDeveloper::Integration
arn:partition:qdeveloper:region:account_ID:integration/integration_ID
AWS::RDS::DBCluster
arn:partition:rds:region:account_ID:cluster/cluster_name
AWS::ResourceExplorer2::ManagedView
arn:partition:resource-explorer-2:region:account_ID:managed-view/view_name/view_UUID
AWS::ResourceExplorer2::View
arn:partition:resource-explorer-2:region:account_ID:view/view_name/view_UUID
AWS::RUM::AppMonitor
arn:partition:rum:region:account_ID:appmonitor/app_monitor_name

AWS::S3::AccessPoint3

arn:partition:s3:region:account_ID:accesspoint/access_point_name

AWS::S3Express::Object

arn:partition:s3express:region:account_ID:bucket/bucket_name
AWS::S3ObjectLambda::AccessPoint
arn:partition:s3-object-lambda:region:account_ID:accesspoint/access_point_name
AWS::S3Outposts::Object
arn:partition:s3-outposts:region:account_ID:object_path
AWS::S3Tables::Table
arn:partition:s3tables:region:account_ID:bucket/bucket_name/table/table_ID
AWS::S3Tables::TableBucket
arn:partition:s3tables:region:account_ID:bucket/bucket_name
AWS::SageMaker::Endpoint
arn:partition:sagemaker:region:account_ID:endpoint/endpoint_name
AWS::SageMaker::ExperimentTrialComponent
arn:partition:sagemaker:region:account_ID:experiment-trial-component/experiment_trial_component_name
AWS::SageMaker::FeatureGroup
arn:partition:sagemaker:region:account_ID:feature-group/feature_group_name
AWS::SCN::Instance
arn:partition:scn:region:account_ID:instance/instance_ID
AWS::SDB::Domain
arn:partition:sdb:region:account_ID:domain/domain_name
AWS::ServiceDiscovery::Namespace
arn:partition:servicediscovery:region:account_ID:namespace/namespace_ID
AWS::ServiceDiscovery::Service
arn:partition:servicediscovery:region:account_ID:service/service_ID
AWS::Signer::SigningJob
arn:partition:signer:region:account_ID:job_owner/signing-jobs/job_UUID
AWS::Signer::SigningProfile
arn:partition:signer:region:account_ID:profile_owner/signing-profiles/profile_name
AWS::SitewiseAssistant::Conversation
arn:partition:sitewise-assistant:region:account_ID:conversation/conversation_ID
AWS::SMSVoice::Message

arn:partition:sms-voice:region:account_ID:message/message_ID

AWS::SMSVoice::OriginationIdentity

arn:partition:sms-voice:region:account_ID:.*$

AWS::SNS::PlatformEndpoint
arn:partition:sns:region:account_ID:endpoint/endpoint_type/endpoint_name/endpoint_ID
AWS::SNS::Topic
arn:partition:sns:region:account_ID:topic_name
AWS::SocialMessaging::PhoneNumberId

arn:partition:social-messaging:region:account_ID:phone-number-id/phone_number_ID

AWS::SocialMessaging::WabaId

arn:partition:social-messaging:region:account_ID:waba/waba_ID

AWS::SQS::Queue
arn:partition:sqs:region:account_ID:queue_name
AWS::SSM::ManagedNode

Eles ARN devem estar em um dos seguintes formatos:

  • arn:partition:ssm:region:account_ID:managed-instance/instance_ID

  • arn:partition:ec2:region:account_ID:instance/instance_ID

AWS::SSMMessages::ControlChannel
arn:partition:ssmmessages:region:account_ID:control-channel/control_channel_ID
AWS::StepFunctions::StateMachine

Eles ARN devem estar em um dos seguintes formatos:

  • arn:partition:states:region:account_ID:stateMachine:stateMachine_name

  • arn:partition:states:region:account_ID:stateMachine:stateMachine_name/label_name

AWS::SWF::Domain
arn:partition:swf:region:account_ID:/domain/domain_name
AWS::ThinClient::Device
arn:partition:thinclient:region:account_ID:device/device_ID
AWS::ThinClient::Environment
arn:partition:thinclient:region:account_ID:environment/environment_ID
AWS::Timestream::Database
arn:partition:timestream:region:account_ID:database/database_name
AWS::Timestream::Table
arn:partition:timestream:region:account_ID:database/database_name/table/table_name
AWS::VerifiedPermissions::PolicyStore
arn:partition:verifiedpermissions:region:account_ID:policy-store/policy_store_ID

1 Para tabelas com fluxos habilitados, o campo resources no evento de dados contém AWS::DynamoDB::Stream e AWS::DynamoDB::Table. Se você especificar AWS::DynamoDB::Table como resources.type, ele registrará os eventos da tabela do DynamoDB e dos fluxos do DynamoDB por padrão. Para excluir eventos de fluxos, adicione um filtro no campo eventName.

2 Para registrar todos os eventos de dados de todos os objetos em um bucket específico do S3, use o StartsWith operador e inclua somente o bucket ARN como valor correspondente. A barra final é intencional; não a exclua.

3 Para registrar eventos em todos os objetos em um ponto de acesso do S3, recomendamos que você use somente o ponto de acessoARN, não inclua o caminho do objeto e use os NotStartsWith operadores StartsWith ou.

Filtrando eventos de dados resources.ARN usando o AWS Management Console

Siga as etapas a seguir para filtrar no resources.ARN campo usando o CloudTrail console.

  1. Siga as etapas do procedimento criar trilha ou siga as etapas do procedimento criar armazenamento de dados de eventos.

  2. À medida que você seguir as etapas para criar a trilha ou o armazenamento de dados de eventos, selecione o seguinte:

    1. Escolha Eventos de dados.

    2. Escolha o tipo de recurso para o qual você deseja registrar eventos de dados.

    3. Para o Modelo do seletor de log, escolha Personalizado.

    4. (Opcional) Em Nome do seletor, insira um nome para identificar o seletor. O nome do seletor é um nome descritivo para um seletor de eventos avançado, como "Registrar eventos de dados em log para apenas dois buckets do S3". O nome do seletor é listado como Name no seletor de eventos avançado e pode ser visualizado se você expandir a exibição. JSON

    5. Em Seletores de eventos avançados, faça o seguinte para filtrar pelo resources.ARN:

      1. Em Campo, escolha recursos. ARN.

      2. Em Operador, escolha o operador de condição. Neste exemplo, escolheremos começa com porque queremos registrar eventos de dados para um bucket específico do S3.

      3. Em Valor, insira o ARN para seu tipo de recurso (por exemplo,arn:aws:s3:::amzn-s3-demo-bucket).

      4. Para filtrar outro resources.ARN, escolha + Condição. Para obter informações sobre como CloudTrail avalia várias condições, consulteComo CloudTrail avalia várias condições para um campo.

      Filtrar eventos de dados do S3 por resources.ARN
    6. Escolha +Campo para adicionar filtros em outros campos.

Filtrando eventos de dados resources.ARN usando o AWS CLI

Usando o AWS CLI, você pode filtrar no resources.ARN campo para registrar eventos para um específico ARN ou excluir o registro para um específicoARN.

Se você estiver atualizando uma trilha ou um armazenamento de dados de eventos existente para registrar seletores de eventos adicionais, obtenha os seletores de eventos atuais executanto o comando get-event-selectors para uma trilha ou o comando get-event-data-store para um armazenamento de dados de eventos. Em seguida, atualize seus seletores de eventos para adicionar um seletor de campo para cada tipo de recurso de dados que você deseja registrar.

O exemplo a seguir mostra como configurar a trilha para registrar eventos de dados de todos os objetos do Amazon S3 em um bucket do S3. O valor para eventos do S3 para o campo resources.type é AWS::S3::Object. Como os ARN valores dos objetos do S3 e dos buckets do S3 são um pouco diferentes, você deve adicionar o StartsWith operador resources.ARN para capturar todos os eventos.

aws cloudtrail put-event-selectors \ --trail-name TrailName \ --region region \ --advanced-event-selectors \ '[ { "Name": "S3EventSelector", "FieldSelectors": [ { "Field": "eventCategory", "Equals": ["Data"] }, { "Field": "resources.type", "Equals": ["AWS::S3::Object"] }, { "Field": "resources.ARN", "StartsWith": ["arn:aws:s3:::amzn-s3-demo-bucket/"] } ] } ]'

Filtrando eventos de dados por valor readOnly

Usando seletores de eventos avançados, você pode filtrar com base no valor do campo readOnly.

Você só pode usar o operador Equals com o campo readOnly. É possível definir o valor de readOnly para true ou false. Se você não adicionar esse campo, CloudTrail registrará os eventos de leitura e gravação. Um valor de true registra eventos somente leitura. Um valor de false registra eventos somente gravação.

Filtrando eventos de dados por readOnly valor usando o AWS Management Console

Siga as etapas a seguir para filtrar no readOnly campo usando o CloudTrail console.

  1. Siga as etapas do procedimento criar trilha ou siga as etapas do procedimento criar armazenamento de dados de eventos.

  2. À medida que você seguir as etapas para criar a trilha ou o armazenamento de dados de eventos, selecione o seguinte:

    1. Escolha Eventos de dados.

    2. Escolha o tipo de recurso para o qual você deseja registrar eventos de dados.

    3. Em Modelo de seletor de log, escolha o modelo apropriado para o seu caso de uso.

      nota

      Os modelos Registrar somente AWS Management Console eventos e Excluir eventos AWS iniciados pelo serviço estão disponíveis somente para armazenamentos de dados de eventos.

      Escolher o modelo de seletor de log para eventos de dados
      Se planeja fazer isso Escolher este modelo de seletor de log

      Registre somente eventos de leitura e não aplique outros filtros (por exemplo, no valor resources.ARN).

      Registrar somente eventos lidos

      Registre somente eventos de gravação e não aplique outros filtros (por exemplo, no valor resources.ARN).

      Registrar somente eventos de gravação

      Filtre o valor readOnly e aplique filtros adicionais (por exemplo, no valor resources.ARN).

      Personalizado

      Em Seletores de eventos avançados, faça o seguinte para filtrar pelo valor readOnly:

      Como registrar eventos de gravação
      1. Em Campo, escolha readOnly.

      2. Em Operador, escolha equals.

      3. Em Valor, insira false.

      4. Escolha +Campo para adicionar filtros em outros campos.

      Como registrar eventos de leitura
      1. Em Campo, escolha readOnly.

      2. Em Operador, escolha equals.

      3. Em Valor, insira true.

      4. Escolha +Campo para adicionar filtros em outros campos.

Filtrando eventos de dados por readOnly valor usando o AWS CLI

Usando o AWS CLI, você pode filtrar no readOnly campo.

Você só pode usar o operador Equals com o campo readOnly. É possível definir o valor de readOnly para true ou false. Se você não adicionar esse campo, CloudTrail registrará os eventos de leitura e gravação. Um valor de true registra eventos somente leitura. Um valor de false registra eventos somente gravação.

Se você estiver atualizando uma trilha ou um armazenamento de dados de eventos existente para registrar seletores de eventos adicionais, obtenha os seletores de eventos atuais executanto o comando get-event-selectors para uma trilha ou o comando get-event-data-store para um armazenamento de dados de eventos. Depois, atualize seus seletores de eventos para adicionar um seletor de campo para cada tipo de recurso de dados que você deseja registrar.

O exemplo a seguir mostra como configurar sua trilha para registrar eventos de dados somente leitura de todos os objetos do bucket do Amazon S3.

aws cloudtrail put-event-selectors \ --trail-name TrailName \ --region region \ --advanced-event-selectors '[ { "Name": "Log read-only S3 data events", "FieldSelectors": [ { "Field": "eventCategory", "Equals": ["Data"] }, { "Field": "resources.type", "Equals": ["AWS::S3::Object"] }, { "Field": "readOnly", "Equals": ["true"] } ] } ]'

O próximo exemplo cria um novo armazenamento de dados de eventos que registra somente eventos de dados somente de gravação para EBS o Direct. APIs Você pode usar o update-event-data-storecomando para atualizar um armazenamento de dados de eventos existente.

aws cloudtrail create-event-data-store \ --name "eventDataStoreName" \ --advanced-event-selectors \ '[ { "Name": "Log write-only EBS Direct API data events", "FieldSelectors": [ { "Field": "eventCategory", "Equals": ["Data"] }, { "Field": "resources.type", "Equals": ["AWS::EC2::Snapshot"] }, { "Field": "readOnly", "Equals": ["false"] } ] } ]'