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 chamadas de API específicas adicionando um filtro no campo eventName.

  • 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á 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. É possível usar qualquer operador com resources.ARN, mas se você usar Equals ou NotEquals, o valor deverá corresponder exatamente ao ARN de um recurso válido do resources.type especificado. Para registrar todos os eventos de dados de todos os objetos do em um bucket do S3 específico, use a propriedade StartsWith e inclua apenas o ARN do bucket como o 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 EventType a ser incluído ou excluído. 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 realizadas por identidades específicas do IAM. Para obter mais informações, consulte Elemento userIdentity do CloudTrail .

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 de tópico do SNS 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 todos os PutObject do Amazon S3 e chamadas DeleteObject de API, mas excluir o registro em log de eventos de 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:

  • Os operadores DESELECT são AND'd (combinados). Se alguma das condições do operador DESELECT for atendida, o evento não será entregue. Os operadores DESELECT válidos para seletores de eventos avançados são os seguintes:

    • NotEndsWith

    • NotEquals

    • NotStartsWith

  • Os operadores SELECT são OR'd (exclusivos). Os operadores SELECT válidos para seletores de eventos avançados são os seguintes:

    • EndsWith

    • Equals

    • StartsWith

  • As combinações dos operadores SELECT e DESELECT seguem as regras acima e os dois grupos são combinados (AND'd).

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 das seguintes condições do operador DESELECT for 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 das seguintes condições do operador SELECT for 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 poderá ser visualizado se você expandir a visualizaçã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 de API específica.

      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. Os --advanced-event-selectors são configurados para registrar somente eventos de dados para as chamadas de API GetObject, PutObject e DeleteObject.

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 Direct APIs , mas exclui as chamadas de ListChangedBlocks API. 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.

É possível usar qualquer operador com resources.ARN, mas se você usar Equals ou NotEquals, o valor deverá corresponder exatamente ao ARN de um recurso válido do valor de resources.type especificado. Para registrar todos os eventos de dados de todos os objetos do em um bucket do S3 específico, use a propriedade StartsWith e inclua apenas o ARN do bucket como o valor correspondente.

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

nota

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

resources.type resources.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

O ARN deve 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::Bedrock::PromptVersion
arn:partition:bedrock:region:account_ID:prompt/prompt_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

O ARN deve 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::Activity
arn:partition:states:region:account_ID:activity/activity_name
AWS::StepFunctions::StateMachine

O ARN deve 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::RegionalEndpoint
arn:partition:timestream:region:account_ID:regional-endpoint/*
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 em log todos os eventos de dados de todos os objetos em um bucket do S3 específico, use o operador StartsWith e inclua apenas o ARN do bucket como o valor correspondente. A barra final é intencional; não a exclua.

3 Para registrar em log eventos de todos os objetos em um ponto de acesso do S3, recomendamos usar somente o ARN do ponto de acesso, não incluir o caminho do objeto e usar os operadores StartsWith ou NotStartsWith.

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 poderá ser visualizado se você expandir a visualização JSON.

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

      1. Em Campo, escolha resources.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 do 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 ARN específico ou excluir o registro para um ARN específico.

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 valores de ARN para objetos do S3 e buckets do S3 são ligeiramente diferentes, você deve adicionar o operador StartsWith para o 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á 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á 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 o EBS 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"] } ] } ]'