Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Journalisation des événements de données
Cette section décrit comment enregistrer des événements de données à l'aide de la CloudTrail console et AWS CLI.
Par défaut, les journaux de suivi et les entrepôts de données d'événement ne journalisent pas les événements de données. Des frais supplémentaires s’appliquent pour les événements de données. Pour plus d’informations, consultez Tarification d’AWS CloudTrail
Les événements de données fournissent des informations sur les opérations de ressource exécutées sur ou dans une ressource. Ils sont également connus sous le nom opérations de plans de données. Les événements de données sont souvent des activités dont le volume est élevé.
Les événements de données incluent notamment :
-
APIActivité au niveau des objets Amazon S3 (par exemple,
GetObject
DeleteObject
, etPutObject
API opérations) sur des objets dans des compartiments S3. -
AWS Lambda activité d'exécution de la fonction (la
Invoke
API). -
CloudTrail
PutAuditEvents
activité sur un chenal CloudTrail lacustre utilisé pour enregistrer des événements provenant de l'extérieur AWS. -
Amazon SNS
Publish
etPublishBatch
APIses opérations sur différents sujets.
Vous pouvez utiliser des sélecteurs d'événements avancés pour créer des sélecteurs précis, qui vous aident à contrôler les coûts en enregistrant uniquement les événements spécifiques présentant un intérêt pour vos cas d'utilisation. Par exemple, vous pouvez utiliser des sélecteurs d'événements avancés pour enregistrer des API appels spécifiques en ajoutant un filtre sur le eventName
champ. Pour plus d’informations, consultez Filtrer les événements liés aux données à l'aide de sélecteurs d'événements avancés.
Note
Les événements enregistrés par vos parcours sont disponibles sur Amazon EventBridge. Par exemple, si vous choisissez de journaliser les événements de données pour les objets S3, mais pas les événements de gestion, votre journal de suivi ne traite et ne journalise que les événements de données pour les objets S3 spécifiés. Les événements de données pour ces objets S3 sont disponibles sur Amazon EventBridge. Pour plus d'informations, consultez la section Événements liés AWS aux services dans le guide de EventBridge l'utilisateur Amazon.
Table des matières
- Événements de données
- Événements en lecture seule et en écriture seule
- Enregistrement des événements liés aux données à l'aide du AWS Management Console
- Enregistrement des événements liés aux données à l'aide du AWS Command Line Interface
- Enregistrement des événements liés aux données pour les sentiers à l'aide du AWS CLI
- Journaliser les événements à l’aide de sélecteurs d’événements avancés
- Enregistrez tous les événements Amazon S3 pour un compartiment Amazon S3 à l'aide de sélecteurs d'événements avancés
- Journaliser Amazon S3 sur les événements AWS Outposts à l’aide de sélecteurs d’événements avancés
- Journaliser les événements à l'aide de sélecteurs d'événements de base
- Enregistrement des événements de données pour les magasins de données d'événements à l'aide du AWS CLI
- Enregistrement des événements liés aux données pour les sentiers à l'aide du AWS CLI
- Filtrer les événements liés aux données à l'aide de sélecteurs d'événements avancés
- La journalisation des événements de données pour la conformité AWS Config
- Enregistrement des événements liés aux données à l'aide du AWS SDKs
Événements de données
Le tableau suivant indique les types d'événements de données disponibles pour les journaux de suivi et les entrepôts de données d'événement. La colonne Type d’événement de données (console) indique la sélection appropriée dans la console. La colonne de valeur resources.type indique la resources.type
valeur que vous devez spécifier pour inclure les événements de données de ce type dans votre magasin de données de suivi ou d'événement à l'aide du ou. AWS CLI CloudTrail APIs
Pour les traces, vous pouvez utiliser des sélecteurs d'événements de base ou avancés pour enregistrer les événements de données relatifs aux objets Amazon S3 dans des compartiments à usage général, des fonctions Lambda et des tables DynamoDB (illustrés dans les trois premières lignes du tableau). Vous ne pouvez utiliser que des sélecteurs d'événements avancés pour enregistrer les types d'événements de données indiqués dans les lignes restantes.
Pour les entrepôts de données d'événement, vous ne pouvez utiliser que des sélecteurs d'événements avancés pour inclure les événements de données.
AWS service | Description | Type d’événement de données (console) | valeur resources.type |
---|---|---|---|
Amazon DynamoDB | Activité au APIniveau des éléments Amazon DynamoDB sur les tables (par exemple NotePour les tables ayant les flux activés, le champ |
DynamoDB |
|
AWS Lambda | AWS Lambda activité d'exécution de la fonction (la |
Lambda | AWS::Lambda::Function |
Amazon S3 | APIActivité au niveau des objets Amazon S3 (par exemple, |
S3 | AWS::S3::Object |
AWS AppConfig | AWS AppConfig APIactivité pour les opérations de configuration telles que les appels vers |
AWS AppConfig | AWS::AppConfig::Configuration |
AWS Échange de données B2B | APIActivité d'échange de données B2B pour les opérations du transformateur telles que les appels vers |
Échange de données B2B | AWS::B2BI::Transformer |
Amazon Bedrock | APIActivité d'Amazon Bedrock sur un alias d'agent. | Alias d’agent Bedrock | AWS::Bedrock::AgentAlias |
Amazon Bedrock | APIActivité d'Amazon Bedrock sur un alias de flux. | Alias de Bedrock Flow | AWS::Bedrock::FlowAlias |
Amazon Bedrock | APIActivité d'Amazon Bedrock sur un garde-corps. | Rambarde Bedrock | AWS::Bedrock::Guardrail |
Amazon Bedrock | APIActivité d'Amazon Bedrock sur une base de connaissances. | Base de connaissances Bedrock | AWS::Bedrock::KnowledgeBase |
Amazon CloudFront | CloudFront APIactivité sur un KeyValueStore. |
CloudFront KeyValueStore | AWS::CloudFront::KeyValueStore |
AWS Cloud Map | AWS Cloud Map APIactivité sur un espace de noms. | AWS Cloud Map espace de nom |
|
AWS Cloud Map | AWS Cloud Map APIactivité sur un service. | AWS Cloud Map web |
|
AWS CloudTrail | CloudTrail |
CloudTrail canal | AWS::CloudTrail::Channel |
Amazon CloudWatch | CloudWatch APIActivité d'Amazon sur les statistiques. |
CloudWatch métrique | AWS::CloudWatch::Metric |
Amazon CloudWatch RUM | CloudWatch RUMAPIActivité d'Amazon sur les moniteurs d'applications. |
RUMmoniteur d'application | AWS::RUM::AppMonitor |
Amazon CodeWhisperer | CodeWhisperer APIActivité d'Amazon sur une personnalisation. | CodeWhisperer personnalisation | AWS::CodeWhisperer::Customization |
Amazon CodeWhisperer | CodeWhisperer APIActivité d'Amazon sur un profil. | CodeWhisperer | AWS::CodeWhisperer::Profile |
Amazon Cognito | APIActivité d'Amazon Cognito sur les pools d'identités Amazon Cognito. |
Réserves d’identités Cognito | AWS::Cognito::IdentityPool |
Amazon DynamoDB | Activité d'Amazon API DynamoDB sur les flux. |
DynamoDB Streams | AWS::DynamoDB::Stream |
Amazon Elastic Block Store | Amazon Elastic Block Store (EBS) directementAPIs, tel que |
Amazon EBS direct APIs | AWS::EC2::Snapshot |
Amazon EMR | EMRAPIActivité d'Amazon sur un espace de travail de journalisation à écriture anticipée. | EMRespace de travail de journalisation à écriture anticipée | AWS::EMRWAL::Workspace |
Amazon FinSpace | Amazon FinSpaceAPIactivité sur les environnements. |
FinSpace | AWS::FinSpace::Environment |
AWS Glue | AWS Glue APIactivité sur des tables créées par Lake Formation. |
Lake Formation | AWS::Glue::Table |
Amazon GuardDuty | GuardDuty APIActivité d'Amazon pour un détecteur. |
GuardDuty détecteur | AWS::GuardDuty::Detector |
AWS HealthImaging | AWS HealthImaging APIactivité sur les magasins de données. |
MedicalImaging magasin de données | AWS::MedicalImaging::Datastore |
AWS IoT | AWS IoT APIactivité sur les certificats. |
Certificat IoT | AWS::IoT::Certificate |
AWS IoT | Un truc lié à l'IoT | AWS::IoT::Thing |
|
AWS IoT Greengrass Version 2 | APIActivité Greengrass depuis un appareil principal de Greengrass sur une version de composant. NoteGreengrass n'enregistre pas les cas de refus d'accès. |
Version du composant IoT Greengrass | AWS::GreengrassV2::ComponentVersion |
AWS IoT Greengrass Version 2 | APIActivité Greengrass depuis un appareil principal de Greengrass lors d'un déploiement. NoteGreengrass n'enregistre pas les cas de refus d'accès. |
Déploiement de Greengrass pour l'IoT | AWS::GreengrassV2::Deployment |
AWS IoT SiteWise | SiteWise Actif IoT | AWS::IoTSiteWise::Asset |
|
AWS IoT SiteWise | SiteWise APIActivité de l'IoT sur des séries chronologiques. |
Séries SiteWise chronologiques sur l'IoT | AWS::IoTSiteWise::TimeSeries |
AWS IoT TwinMaker | TwinMaker APIActivité IoT sur une entité. |
TwinMaker Entité IoT | AWS::IoTTwinMaker::Entity |
AWS IoT TwinMaker | TwinMaker APIActivité IoT sur un espace de travail. |
Espace de TwinMaker travail IoT | AWS::IoTTwinMaker::Workspace |
Amazon Kendra Intelligent Ranking (Classement intelligent Amazon Kendra) | APIActivité de classement intelligent d'Amazon Kendra sur les plans d'exécution des rescores. |
Classement Kendra | AWS::KendraRanking::ExecutionPlan |
Amazon Keyspaces (pour Apache Cassandra) | APIActivité d'Amazon Keyspaces sur une table. | Table Cassandra | AWS::Cassandra::Table |
Amazon Kinesis Data Streams | Activité de Kinesis Data API Streams sur les flux. | Kinesis Stream | AWS::Kinesis::Stream |
Amazon Kinesis Data Streams | Activité de Kinesis Data API Streams sur les consommateurs de streams. | Consommateur de Kinesis Stream | AWS::Kinesis::StreamConsumer |
Amazon Kinesis Video Streams | Activité de Kinesis Video API Streams sur les flux vidéo, tels que les appels GetMedia vers PutMedia et. |
Flux vidéo Kinesis | AWS::KinesisVideo::Stream |
Amazon Machine Learning | APIActivité de Machine Learning sur les modèles de machine learning. | Apprentissage automatique MlModel | AWS::MachineLearning::MlModel |
Amazon Managed Blockchain | APIActivité Amazon Managed Blockchain sur un réseau. |
Réseau Managed Blockchain | AWS::ManagedBlockchain::Network |
Amazon Managed Blockchain | Amazon Managed Blockchain JSON : RPC fait appel à des nœuds Ethereum, tels que |
Managed Blockchain | AWS::ManagedBlockchain::Node |
Graphe Amazon Neptune | Les API activités liées aux données, par exemple les requêtes, les algorithmes ou la recherche vectorielle, sur un graphe Neptune. |
Graphe Neptune | AWS::NeptuneGraph::Graph |
Amazon One Enterprise | APIActivité d'Amazon One Enterprise sur unUKey. |
Amazon One UKey | AWS::One::UKey |
Amazon One Enterprise | APIActivité d'Amazon One Enterprise sur les utilisateurs. |
Utilisateur d'Amazon One | AWS::One::User |
AWS Payment Cryptography | AWS Payment Cryptography APIactivité sur les alias. | Alias de cryptographie de paiement | AWS::PaymentCryptography::Alias |
AWS Payment Cryptography | AWS Payment Cryptography APIactivité sur les touches. | Clé de cryptographie de paiement | AWS::PaymentCryptography::Key |
AWS Private CA | AWS Private CA Connecteur pour l'APIactivité Active Directory. |
AWS Private CA Connecteur pour Active Directory | AWS::PCAConnectorAD::Connector |
AWS Private CA | AWS Private CA Connecteur pour SCEP API activité. |
AWS Private CA Connecteur pour SCEP | AWS::PCAConnectorSCEP::Connector |
Applications Amazon Q | APIActivité des données sur Amazon Q Apps. |
Applications Amazon Q | AWS::QApps:QApp |
Amazon Q Business | APIActivité Amazon Q Business sur une application. |
Application Amazon Q Business | AWS::QBusiness::Application |
Amazon Q Business | APIActivité Amazon Q Business sur une source de données. |
Source de données Amazon Q Business | AWS::QBusiness::DataSource |
Amazon Q Business | APIActivité Amazon Q Business sur un indice. |
Indice Amazon Q Business | AWS::QBusiness::Index |
Amazon Q Business | APIActivité Amazon Q Business sur une expérience Web. |
Expérience Web Amazon Q Business | AWS::QBusiness::WebExperience |
Amazon RDS | RDSAPIActivité d'Amazon sur un cluster de bases de données. |
RDSDonnées API - Cluster de bases de données | AWS::RDS::DBCluster |
Amazon S3 | APIActivité d'Amazon S3 sur les points d'accès. |
Points d’accès S3 | AWS::S3::AccessPoint |
Amazon S3 | APIActivité au niveau des objets Amazon S3 (par exemple, |
S3 Express | AWS::S3Express::Object |
Amazon S3 | APIActivité des points d'accès Amazon S3 Object Lambda, tels que les appels vers |
S3 Object Lambda | AWS::S3ObjectLambda::AccessPoint |
Amazon S3 on Outposts | S3 Outposts | AWS::S3Outposts::Object |
|
Amazon SageMaker | SageMaker InvokeEndpointWithResponseStream Activité d'Amazon sur les terminaux. |
SageMaker point final | AWS::SageMaker::Endpoint |
Amazon SageMaker | SageMaker APIActivité d'Amazon sur les Feature Stores. |
SageMaker feature store | AWS::SageMaker::FeatureGroup |
Amazon SageMaker | SageMaker APIActivité d'Amazon sur les composants des essais expérimentaux. |
SageMaker composant d'essai expérimental sur les métriques | AWS::SageMaker::ExperimentTrialComponent |
Amazon SNS | SNS |
SNSpoint final de la plateforme | AWS::SNS::PlatformEndpoint |
Amazon SNS | Amazon SNS |
SNSsujet | AWS::SNS::Topic |
Amazon SQS | SQSAPIActivité d'Amazon sur les messages. |
SQS | AWS::SQS::Queue |
AWS Step Functions | APIActivité Step Functions sur une machine à états. |
Machine d’état Step Functions | AWS::StepFunctions::StateMachine |
AWS Supply Chain | AWS Supply Chain APIactivité sur une instance. |
Chaîne d'approvisionnement | AWS::SCN::Instance |
Amazon SWF | SWFdomaine | AWS::SWF::Domain |
|
AWS Systems Manager | APIActivité de Systems Manager sur les canaux de contrôle. | Systems Manager | AWS::SSMMessages::ControlChannel |
AWS Systems Manager | APIActivité de Systems Manager sur les nœuds gérés. | Nœud géré par Systems Manager | AWS::SSM::ManagedNode |
Amazon Timestream | Activité d'Amazon Query APITimestream sur les bases de données. |
Base de données Timestream | AWS::Timestream::Database |
Amazon Timestream | Activité Amazon Query APITimestream sur les tables. |
Table Timestream | AWS::Timestream::Table |
Amazon Verified Permissions | APIActivité d'Amazon Verified Permissions sur une boutique de polices. |
Amazon Verified Permissions | AWS::VerifiedPermissions::PolicyStore |
Amazon WorkSpaces Thin Client | WorkSpaces APIActivité du client léger sur un appareil. | Appareil client léger | AWS::ThinClient::Device |
Amazon WorkSpaces Thin Client | WorkSpaces APIActivité du client léger dans un environnement. | Client léger d’environnement | AWS::ThinClient::Environment |
AWS X-Ray | X-Ray Trace | AWS::XRay::Trace |
Pour enregistrer CloudTrail les événements liés aux données, vous devez ajouter explicitement chaque type de ressource pour lequel vous souhaitez collecter l'activité. Pour plus d’informations, consultez Création d'un parcours avec la CloudTrail console et Création d'un magasin de données d' CloudTrailévénements pour les événements à l'aide de la console.
Sur un journal de suivi ou un entrepôt de données d'événement à région unique, vous pouvez journaliser les événements de données uniquement pour les ressources auxquelles vous pouvez accéder dans cette région. Bien que les compartiments S3 soient globaux, les AWS Lambda fonctions et les tables DynamoDB sont régionales.
Des frais supplémentaires s'appliquent pour la journalisation des événements de données. Pour CloudTrail connaître les tarifs, consultez la section AWS CloudTrail Tarification
Exemples : journalisation des événements de données pour les objets Amazon S3
Journalisation des événements de données pour les objets S3 d'un compartiment S3
L'exemple suivant montre comment la journalisation fonctionne lorsque vous configurez la journalisation de tous les événements de données d'un compartiment S3 nommé DOC-EXAMPLE-BUCKET
. Dans cet exemple, l' CloudTrail utilisateur a spécifié un préfixe vide et l'option permettant de consigner les événements de données en lecture et en écriture.
-
Un utilisateur charge un objet sur
DOC-EXAMPLE-BUCKET
. -
L'
PutObject
APIopération s'effectue au niveau de l'objet API Amazon S3. Il est enregistré en tant qu'événement de données dans CloudTrail. Étant donné que l' CloudTrail utilisateur a spécifié un compartiment S3 avec un préfixe vide, les événements qui se produisent sur n'importe quel objet de ce compartiment sont enregistrés. L'entrepôt de données d'événement ou le journal de suivi traite et journalise l'événement. -
Un autre utilisateur charge un objet sur
DOC-EXAMPLE-BUCKET2
. -
L'
PutObject
APIopération s'est produite sur un objet d'un compartiment S3 qui n'était pas spécifié pour le magasin de données de suivi ou d'événement. L'événement n'est pas journalisé par le journal de suivi ou l'entrepôt de données d'événement.
Journalisation des événements de données pour des objets S3 spécifiques
L'exemple suivant montre comment la journalisation fonctionne lorsque vous configurez un journal de suivi ou un entrepôt de données d'événement pour journaliser les événements d'objets S3 spécifiques. Dans cet exemple, l' CloudTrail utilisateur a spécifié un compartiment S3 nomméDOC-EXAMPLE-BUCKET3
, avec le préfixe my-images
, et la possibilité de ne consigner que les événements d'écriture de données.
-
Un utilisateur supprime un objet qui commence par le préfixe
my-images
dans le compartiment, tel quearn:aws:s3:::DOC-EXAMPLE-BUCKET3/my-images/example.jpg
. -
L'
DeleteObject
APIopération s'effectue au niveau de l'objet API Amazon S3. Il est enregistré en tant qu'événement Write data in CloudTrail. L'événement s'est produit sur un objet qui correspond au préfixe et au compartiment S3 spécifiés dans le journal de suivi ou l'entrepôt de données d'événement. L'entrepôt de données d'événement ou le journal de suivi traite et journalise l'événement. -
Un autre utilisateur supprime un objet avec un préfixe différent dans le compartiment S3, tel que
arn:aws:s3:::DOC-EXAMPLE-BUCKET3/my-videos/example.avi
. -
L'événement s'est produit sur un objet qui ne correspond pas au préfixe spécifié dans votre journal de suivi ou l'entrepôt de données d'événement. L'événement n'est pas journalisé par le journal de suivi ou l'entrepôt de données d'événement.
-
Un utilisateur appelle l'
GetObject
APIopération pour l'objet,arn:aws:s3:::DOC-EXAMPLE-BUCKET3/my-images/example.jpg
. -
L'événement s'est produit sur un compartiment et un préfixe spécifiés dans le magasin de données de suivi ou d'événement, mais il s'
GetObject
agit d'un objet Amazon S3 en lecture au niveau de l'objet. API Il est enregistré en tant qu'événement de lecture de données dans CloudTrail, et le magasin de données de suivi ou d'événement n'est pas configuré pour enregistrer les événements de lecture. L'événement n'est pas journalisé par le journal de suivi ou l'entrepôt de données d'événement.
Note
Si vous journalisez des événements de données pour des compartiments Amazon S3 spécifiques, nous vous déconseillons l'utilisation d'un compartiment Amazon S3 pour lequel vous journalisez des événements de données pour recevoir des fichiers journaux que vous avez spécifiés dans la section des événements de données. L’utilisation du même compartiment S3 permet à votre journal de suivi de consigner un événement de données chaque fois que les fichiers journaux sont transmis à votre compartiment Amazon S3. Les fichiers journaux sont composés d’un groupe d’événements transmis à certains intervalles, ce n’est donc pas un rapport 1:1 événement-fichier journal. L’événement est journalisé dans le fichier journal suivant. Par exemple, lors de la CloudTrail livraison de journaux, l'PutObject
événement se produit dans le compartiment S3. Si le compartiment S3 est également spécifié dans la section des événements de données, l’événement PutObject
est traité et journalisé par le journal d’activité en tant qu’événement de données. Cette action est un autre événement PutObject
, qui est traité et enregistré à nouveau par le journal d’activité.
Pour éviter de consigner les événements de données pour le compartiment Amazon S3 dans lequel vous recevez les fichiers journaux si vous configurez un suivi pour consigner tous les événements de données Amazon S3 dans votre AWS compte, envisagez de configurer la livraison des fichiers journaux vers un compartiment Amazon S3 appartenant à un autre AWS compte. Pour plus d’informations, consultez Réception de fichiers CloudTrail journaux provenant de plusieurs comptes.
Journalisation des événements de données pour les objets S3 dans d'autres AWS comptes
Lorsque vous configurez votre journal pour consigner les événements liés aux données, vous pouvez également spécifier des objets S3 appartenant à d'autres AWS comptes. Lorsqu'un événement se produit sur un objet spécifié, CloudTrail évalue si l'événement correspond aux traces de chaque compte. Si l'événement correspond aux paramètres d'un journal d’activité, il est traité et journalisé par le journal de suivi pour ce compte. En général, les API appelants et les propriétaires des ressources peuvent recevoir des événements.
Si vous êtes propriétaire d'un objet S3 et que vous le précisez dans votre journal d’activité, les événements du journal qui se produisent sur l'objet dans votre compte sont journalisés par le journal de suivi. Étant donné que vous êtes propriétaire de l’objet, votre journal d’activité enregistre également les événements du journal lorsque d’autres comptes appellent l’objet.
Si vous spécifiez un objet S3 dans votre journal d’activité, et qu'un autre compte est propriétaire de l'objet, seuls les événements du journal qui se produisent sur cet objet dans votre compte sont enregistrés par votre suivi. Les événements du journal qui se produisent dans d'autres comptes ne sont pas enregistrés par votre journal d’activité.
Exemple : journalisation des événements de données d'un objet Amazon S3 pour deux comptes AWS
L'exemple suivant montre comment deux AWS comptes sont configurés CloudTrail pour consigner des événements pour le même objet S3.
-
Dans votre compte, vous souhaitez que votre journal de suivi journalise les événements de données pour tous les objets de votre compartiment S3 nommés
DOC-EXAMPLE-BUCKET
. Vous configurez le journal de suivi en spécifiant le compartiment S3 avec un préfixe d'objet vide. -
Bob a un compte distinct qui dispose d’un accès au compartiment S3. Il souhaite également journaliser les événements de données pour tous les objets dans le même compartiment S3. Pour son journal de suivi, il configure le journal de suivi et spécifie le même compartiment S3 avec un préfixe d'objet vide.
-
Bob télécharge un objet dans le compartiment S3 avec l'
PutObject
APIopération. -
Cet événement s'est produit dans son compte et il correspond aux paramètres pour son journal de suivi. L'événement est traité et journalisé par le journal de suivi de Bob.
-
Puisque vous êtes propriétaire du compartiment S3 et que l'événement correspond aux paramètres pour votre journal de suivi, ce même événement est également traité et journalisé par votre journal de suivi. Comme il existe désormais deux copies de l'événement (l'une connectée à la trace de Bob et l'autre connectée à la vôtre), CloudTrail deux copies de l'événement de données sont facturées.
-
Vous chargez un objet dans le compartiment S3.
-
Cet événement se produit dans votre compte et il correspond aux paramètres pour votre journal de suivi. L'événement est traité et journalisé par votre journal de suivi.
-
Comme l'événement ne s'est pas produit dans le compte de Bob et qu'il ne possède pas le compartiment S3, le suivi de Bob n'enregistre pas l'événement. CloudTrail des frais pour une seule copie de cet événement de données.
Exemple : enregistrement des événements de données pour tous les compartiments, y compris un compartiment S3 utilisé par deux comptes AWS
L'exemple suivant montre le comportement de journalisation lorsque l'option Sélectionner tous les compartiments S3 de votre compte est activée pour les traces qui collectent des événements de données dans un AWS compte.
-
Dans votre compte, vous souhaitez que votre journal de suivi journalise les événements de données pour tous les compartiments S3. Vous configurez le journal de suivi en choisissant les événements Lecture, les événements Écriture ou les deux pour Tous les compartiments S3 actuels et futurs dans Événements de données.
-
Bob dispose d’un compte distinct qui a été autorisé à accéder à un compartiment S3 dans votre compte. Il veut journaliser les événements de données pour le compartiment auquel il a accès. Il configure son journal de suivi de manière à obtenir des événements de données pour tous les compartiments S3.
-
Bob télécharge un objet dans le compartiment S3 avec l'
PutObject
APIopération. -
Cet événement s'est produit dans son compte et il correspond aux paramètres pour son journal de suivi. L'événement est traité et journalisé par le journal de suivi de Bob.
-
Puisque vous êtes propriétaire du compartiment S3 et que l'événement correspond aux paramètres pour votre journal de suivi, ce même événement est également traité et journalisé votre journal de suivi. Comme il existe désormais deux copies de l'événement (l'une connectée à la trace de Bob et l'autre connectée à la vôtre), une copie de l'événement de données est CloudTrail facturée à chaque compte.
-
Vous chargez un objet dans le compartiment S3.
-
Cet événement se produit dans votre compte et il correspond aux paramètres pour votre journal de suivi. L'événement est traité et journalisé par votre journal de suivi.
-
Comme l'événement ne s'est pas produit dans le compte de Bob et qu'il ne possède pas le compartiment S3, le suivi de Bob n'enregistre pas l'événement. CloudTrail ne facture qu'une seule copie de cet événement lié aux données sur votre compte.
-
Un troisième utilisateur, Mary, a accès au compartiment S3 et exécute une opération
GetObject
sur le compartiment. Elle dispose d'un journal de suivi configuré de manière à journaliser les événements de données sur tous les compartiments S3 de son compte. Parce qu'elle est l'APIappelant, elle CloudTrail enregistre un événement lié aux données dans sa trace. Bien que Bob ait accès au compartiment, il n'est pas le propriétaire de la ressource, donc aucun événement n'est journalisé dans son journal de suivi cette fois. En tant que propriétaire de la ressource, vous recevez un événement sur votre parcours concernant l'GetObject
opération que Mary a appelée. CloudTraildébite votre compte et celui de Mary pour chaque copie de l'événement lié aux données : une copie sur les traces de Mary et une sur la vôtre.
Événements en lecture seule et en écriture seule
Quand vous configurez votre journal de suivi ou votre entrepôt de données d'événement pour journaliser les événements de données et de gestion, vous pouvez spécifier si voulez les événements en lecture seule, les événements en écriture seule ou les deux.
-
Lecture
Les événements de lecture incluent les API opérations qui lisent vos ressources, mais n'apportent aucune modification. Par exemple, les événements en lecture seule incluent Amazon EC2
DescribeSecurityGroups
etDescribeSubnets
API les opérations. Ces opérations renvoient uniquement des informations sur vos EC2 ressources Amazon et ne modifient pas vos configurations. -
Write (Écrire)
Les événements d'écriture incluent API les opérations qui modifient (ou sont susceptibles de modifier) vos ressources. Par exemple, Amazon EC2
RunInstances
etTerminateInstances
API ses opérations modifient vos instances.
Exemple : la journalisation des événements lire et écrire pour des journaux de suivi distincts
L'exemple suivant montre comment configurer les sentiers pour diviser l'activité des journaux d'un compte en compartiments S3 distincts : un compartiment nommé DOC - EXAMPLE - BUCKET1 reçoit les événements en lecture seule et un second - DOC EXAMPLE - BUCKET2 reçoit les événements en écriture seule.
-
Vous créez un journal et choisissez le compartiment S3 nommé
DOC-EXAMPLE-BUCKET1
pour recevoir les fichiers journaux. Ensuite, vous mettez à jour le journal de suivi pour spécifier que vous voulez les événements de gestion et de données Read Lire(). -
Vous créez une deuxième trace et choisissez le compartiment S3 dans lequel vous
DOC-EXAMPLE-BUCKET2
souhaitez recevoir les fichiers journaux. Ensuite, vous mettez à jour le journal de suivi pour spécifier que vous voulez les événements de gestion et de données Write (Ecrire). -
L'Amazon EC2
DescribeInstances
et lesTerminateInstances
API opérations ont lieu sur votre compte. -
L'
DescribeInstances
APIopération est un événement en lecture seule et elle correspond aux paramètres du premier suivi. L'événement est journalisé et transmis auDOC-EXAMPLE-BUCKET1
par le journal de suivi. -
L'
TerminateInstances
APIopération est un événement en écriture seule et elle correspond aux paramètres du deuxième suivi. L'événement est journalisé et transmis auDOC-EXAMPLE-BUCKET2
par le journal de suivi.
Enregistrement des événements liés aux données à l'aide du AWS Management Console
Les procédures suivantes décrivent comment mettre à jour un magasin de données d’événement ou un journal de suivi existant pour journaliser les événements de données à l’aide l’ AWS Management Console. Pour plus d’informations sur la création d’un magasin de données d’événement pour journaliser des événements de données, veuillez consulter Création d'un magasin de données d' CloudTrailévénements pour les événements à l'aide de la console. Pour en savoir plus sur la création d’un journal de suivi pour journaliser des événements de données, veuillez consulter Créer un journal de suivi dans la console.
Pour les sentiers, les étapes de journalisation des événements liés aux données varient selon que vous utilisez des sélecteurs d'événements avancés ou des sélecteurs d'événements de base. Vous pouvez enregistrer les événements de données pour tous les types d'événements de données à l'aide de sélecteurs d'événements avancés, mais si vous utilisez des sélecteurs d'événements de base, vous êtes limité à la journalisation des événements de données pour les compartiments Amazon S3 et les objets de compartiment, les AWS Lambda fonctions et les tables Amazon DynamoDB.
Utilisez la procédure suivante pour mettre à jour un magasin de données d’événement existant afin de journaliser les événements de données. Pour plus d'informations sur l'utilisation des sélecteurs d'événements avancés, consultez Filtrer les événements liés aux données à l'aide de sélecteurs d'événements avancés cette rubrique.
-
Connectez-vous à la CloudTrail console AWS Management Console et ouvrez-la à l'adresse https://console.aws.amazon.com/cloudtrail/
. -
Dans le panneau de navigation, sous Lake, choisissez Entrepôts de données d'événement.
-
Sur la page Entrepôts de données d'événement, choisissez l'entrepôt de données d'événement que vous souhaitez mettre à jour.
Note
Vous ne pouvez activer les événements de données que dans les magasins de données d' CloudTrail événements contenant des événements. Vous ne pouvez pas activer les événements de données dans les magasins de données d'événements pour les éléments de AWS Config configuration, les événements CloudTrail Insights ou les AWS non-événements. CloudTrail
-
Sur la page de détails, dans Événements de données, choisissez Modifier.
-
Si vous ne journalisez pas déjà les événements de données, choisissez la case à cocher Événements de données.
-
Pour Data event type (Type d'événement de données), choisissez le type de ressource sur lequel vous souhaitez journaliser les événements de données.
-
Choisissez un modèle de sélecteur de journaux. CloudTrail inclut des modèles prédéfinis qui enregistrent tous les événements de données pour le type de ressource. Pour créer un modèle de sélecteur de journal personnalisé, choisissez Personnaliser.
-
(Facultatif) Dans Nom du sélecteur, saisissez un nom pour identifier votre sélecteur. Le nom du sélecteur est un nom descriptif pour un sélecteur d'événements avancé, tel que « Journaliser les événements de données pour deux compartiments S3 uniquement ». Le nom du sélecteur est répertorié comme
Name
dans le sélecteur d'événements avancé et est visible si vous agrandissez la vue. JSON -
Dans Sélecteurs d’événements avancés, créez une expression pour les ressources spécifiques sur lesquelles vous souhaitez journaliser les événements de données. Vous pouvez ignorer cette étape si vous utilisez un modèle de journal prédéfini.
-
Choisissez parmi les options suivantes.
-
readOnly
-readOnly
peut être défini pour être égal à une valeur detrue
oufalse
. Les événements de données en lecture seule sont des événements qui ne modifient pas l'état d'une ressource, tels que les événementsGet*
ouDescribe*
. Les événements d'écriture ajoutent, modifient ou suppriment des ressources, des attributs ou des artefacts, tels que les événementsPut*
,Delete*
, ouWrite*
. Pour journaliser les deux événementsread
etwrite
, n'ajoutez pas de sélecteurreadOnly
. -
eventName
-eventName
peut utiliser n’importe quel opérateur. Vous pouvez l'utiliser pour inclure ou exclure tout événement de données enregistré CloudTrail, tel quePutBucket
GetItem
, ouGetSnapshotBlock
. -
resources.ARN
- Vous pouvez utiliser n'importe quel opérateurresources.ARN
, mais si vous utilisez égal ou non, la valeur doit correspondre exactement à celle ARN d'une ressource valide du type que vous avez spécifié dans le modèle comme valeur deresources.type
.Le tableau suivant indique le ARN format valide pour chacun d'entre eux
resources.type
.Note
Vous ne pouvez pas utiliser le
resources.ARN
champ pour filtrer les types de ressources qui n'en ont pasARNs.resources.type ressources. 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::Object
2arn:
partition
:s3:::DOC-EXAMPLE-BUCKET
/ arn:partition
:s3:::DOC-EXAMPLE-BUCKET
/object_or_file_name
/AWS::AppConfig::Configuration
arn:
partition
:appconfig:region
:account_ID
:application/application_ID
/environment/environment_ID
/configuration/configuration_profile_ID
AWS::B2BI::Transformer
arn:
partition
:b2bi:region
:account_ID
:transformer/transformer_ID
AWS::Bedrock::AgentAlias
arn:
partition
:bedrock:region
:account_ID
:agent-alias/agent_ID
/alias_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::KnowledgeBase
arn:
partition
:bedrock:region
:account_ID
:knowledge-base/knowledge_base_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::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::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::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::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::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::RDS::DBCluster
arn:
partition
:rds:region
:account_ID
:cluster/cluster_name
AWS::RUM::AppMonitor
arn:
partition
:rum:region
:account_ID
:appmonitor/app_monitor_name
AWS::S3::AccessPoint
3arn:
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::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::ServiceDiscovery::Namespace
arn:
partition
:servicediscovery:region
:account_ID
:namespace/namespace_ID
AWS::ServiceDiscovery::Service
arn:
partition
:servicediscovery:region
:account_ID
:service/service_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::SQS::Queue
arn:
partition
:sqs:region
:account_ID
:queue_name
AWS::SSM::ManagedNode
ARNIl doit être dans l'un des formats suivants :
-
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
ARNIl doit être dans l'un des formats suivants :
-
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 Pour les tables ayant les flux activés, le champ
resources
dans l’événement de plan de données contient à la foisAWS::DynamoDB::Stream
etAWS::DynamoDB::Table
. Si vous spécifiezAWS::DynamoDB::Table
commeresources.type
, les événements de table DynamoDB et les événements de flux DynamoDB sont journalisés par défaut. Pour exclure les événements de flux, ajoutez un filtre sur leeventName
champ.2 Pour enregistrer tous les événements de données pour tous les objets d'un compartiment S3 spécifique, utilisez l'
StartsWith
opérateur et incluez uniquement le compartiment ARN comme valeur correspondante. La barre oblique de fin est intentionnelle ; ne l’excluez pas.3 Pour consigner les événements relatifs à tous les objets d'un point d'accès S3, nous vous recommandons de n'utiliser que le point d'accèsARN, de ne pas inclure le chemin de l'objet et d'utiliser les
NotStartsWith
opérateursStartsWith
or. -
Pour plus d'informations sur les ARN formats des ressources relatives aux événements de données, consultez la section Actions, ressources et clés de condition dans le guide de AWS Identity and Access Management l'utilisateur.
-
-
Pour chaque champ, choisissez + Conditions pour ajouter autant de conditions que vous le souhaitez, jusqu'à un maximum de 500 valeurs spécifiées pour toutes les conditions. Par exemple, pour exclure les événements de données de deux compartiments S3 des événements de données enregistrés dans votre banque de données d'événements, vous pouvez définir le champ sur ressources. ARN, définissez l'opérateur pour ne commence pas par, puis collez-le dans un compartiment ARN S3 ou recherchez les compartiments S3 pour lesquels vous ne souhaitez pas enregistrer d'événements.
Pour ajouter le deuxième compartiment S3, choisissez + Condition, puis répétez l'instruction précédente en collant le dossier ARN for ou en recherchant un autre compartiment.
Note
Il est possible de définir un maximum de 500 valeurs pour tous les sélecteurs d'un entrepôt de données d'événement. Cela inclut des tableaux de valeurs multiples pour un sélecteur tel que
eventName
. Si vous avez défini des valeurs uniques pour tous les sélecteurs, il est possible d’ajouter un maximum de 500 conditions à un sélecteur. -
Choisir + champ pour ajouter des champs supplémentaires au besoin. Pour éviter les erreurs, il convient de ne pas définir de valeurs conflictuelles ou en double pour les champs. Par exemple, ne spécifiez pas qu'un sélecteur ARN dans un sélecteur soit égal à une valeur, puis spécifiez qu'il n'est ARN pas égal à la même valeur dans un autre sélecteur.
-
-
Pour ajouter un autre type de données sur lequel journaliser les événements de données, choisissez Ajouter un type d’événement de données. Répétez la procédure de l'étape 6 à celle-ci pour configurer les sélecteurs d'événements avancés pour le type d'événement de données.
-
Après avoir examiné et vérifié vos choix, choisissez Enregistrer les modifications.
Dans le AWS Management Console, si votre parcours utilise des sélecteurs d'événements avancés, vous pouvez choisir parmi des modèles prédéfinis qui enregistrent tous les événements de données sur une ressource sélectionnée. Après avoir choisi un modèle de sélecteur de journal, il est possible de personnaliser le modèle de manière à inclure uniquement les événements de données que vous souhaitez voir le plus. Pour plus d'informations sur l'utilisation des sélecteurs d'événements avancés, consultez Filtrer les événements liés aux données à l'aide de sélecteurs d'événements avancés cette rubrique.
-
Sur les pages Tableau de bord ou Trails de la CloudTrail console, choisissez le parcours que vous souhaitez mettre à jour.
-
Sur la page de détails, dans Événements de données, choisissez Modifier.
-
Si vous ne journalisez pas déjà les événements de données, choisissez la case à cocher Événements de données.
-
Pour Data event type (Type d'événement de données), choisissez le type de ressource sur lequel vous souhaitez journaliser les événements de données.
-
Choisissez un modèle de sélecteur de journaux. CloudTrail inclut des modèles prédéfinis qui enregistrent tous les événements de données pour le type de ressource. Pour créer un modèle de sélecteur de journal personnalisé, choisissez Personnaliser.
Note
Le choix d'un modèle prédéfini pour les compartiments S3 permet de consigner les événements de données pour tous les compartiments actuellement présents dans votre AWS compte et pour tous les compartiments que vous créez une fois le suivi terminé. Il permet également de consigner l'activité liée aux événements de données effectuée par n'importe quel utilisateur ou rôle dans votre AWS compte, même si cette activité est effectuée sur un bucket appartenant à un autre AWS compte.
Si le journal de suivi s’applique à une seule région, le fait de choisir un modèle prédéfini qui journalise tous les compartiments S3 permet la journalisation des événements de données pour tous les compartiments situés dans la même région que votre journal de suivi et tous les compartiments que vous créerez ultérieurement dans cette région. Les événements de données relatifs aux compartiments Amazon S3 situés dans d'autres régions ne seront pas enregistrés dans votre AWS compte.
Si vous créez un suivi pour toutes les régions, le choix d'un modèle prédéfini pour les fonctions Lambda permet de consigner les événements de données pour toutes les fonctions actuellement présentes dans votre AWS compte, ainsi que pour toutes les fonctions Lambda que vous pourriez créer dans n'importe quelle région une fois le suivi créé. Si vous créez un parcours pour une seule région (pour les sentiers, cela ne peut être fait qu'en utilisant le AWS CLI), cette sélection active l'enregistrement des événements de données pour toutes les fonctions actuellement présentes dans cette région sur votre AWS compte, ainsi que pour toutes les fonctions Lambda que vous pourriez créer dans cette région une fois que vous aurez fini de créer le parcours. Cela n’active pas la journalisation des événements de données pour les fonctions Lambda créées dans d’autres régions.
La journalisation des événements de données pour toutes les fonctions permet également de consigner l'activité des événements de données effectués par n'importe quel utilisateur ou rôle dans votre AWS compte, même si cette activité est effectuée sur une fonction appartenant à un autre AWS compte.
-
(Facultatif) Dans Nom du sélecteur, saisissez un nom pour identifier votre sélecteur. Le nom du sélecteur est un nom descriptif pour un sélecteur d'événements avancé, tel que « Journaliser les événements de données pour deux compartiments S3 uniquement ». Le nom du sélecteur est répertorié comme
Name
dans le sélecteur d'événements avancé et est visible si vous agrandissez la vue. JSON -
Dans Sélecteurs d’événements avancés, créez une expression pour les ressources spécifiques sur lesquelles vous souhaitez journaliser les événements de données. Vous pouvez ignorer cette étape si vous utilisez un modèle de journal prédéfini.
-
Choisissez parmi les options suivantes.
-
readOnly
-readOnly
peut être défini pour être égal à une valeur detrue
oufalse
. Les événements de données en lecture seule sont des événements qui ne modifient pas l'état d'une ressource, tels que les événementsGet*
ouDescribe*
. Les événements d'écriture ajoutent, modifient ou suppriment des ressources, des attributs ou des artefacts, tels que les événementsPut*
,Delete*
, ouWrite*
. Pour journaliser les deux événementsread
etwrite
, n'ajoutez pas de sélecteurreadOnly
. -
eventName
-eventName
peut utiliser n’importe quel opérateur. Vous pouvez l'utiliser pour inclure ou exclure tout événement de données enregistré CloudTrail, tel quePutBucket
GetItem
, ouGetSnapshotBlock
. -
resources.ARN
- Vous pouvez utiliser n'importe quel opérateurresources.ARN
, mais si vous utilisez égal ou non, la valeur doit correspondre exactement à celle ARN d'une ressource valide du type que vous avez spécifié dans le modèle comme valeur deresources.type
.Le tableau suivant indique le ARN format valide pour chacun d'entre eux
resources.type
.Note
Vous ne pouvez pas utiliser le
resources.ARN
champ pour filtrer les types de ressources qui n'en ont pasARNs.resources.type ressources. 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::Object
2arn:
partition
:s3:::DOC-EXAMPLE-BUCKET
/ arn:partition
:s3:::DOC-EXAMPLE-BUCKET
/object_or_file_name
/AWS::AppConfig::Configuration
arn:
partition
:appconfig:region
:account_ID
:application/application_ID
/environment/environment_ID
/configuration/configuration_profile_ID
AWS::B2BI::Transformer
arn:
partition
:b2bi:region
:account_ID
:transformer/transformer_ID
AWS::Bedrock::AgentAlias
arn:
partition
:bedrock:region
:account_ID
:agent-alias/agent_ID
/alias_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::KnowledgeBase
arn:
partition
:bedrock:region
:account_ID
:knowledge-base/knowledge_base_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::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::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::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::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::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::RDS::DBCluster
arn:
partition
:rds:region
:account_ID
:cluster/cluster_name
AWS::RUM::AppMonitor
arn:
partition
:rum:region
:account_ID
:appmonitor/app_monitor_name
AWS::S3::AccessPoint
3arn:
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::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::ServiceDiscovery::Namespace
arn:
partition
:servicediscovery:region
:account_ID
:namespace/namespace_ID
AWS::ServiceDiscovery::Service
arn:
partition
:servicediscovery:region
:account_ID
:service/service_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::SQS::Queue
arn:
partition
:sqs:region
:account_ID
:queue_name
AWS::SSM::ManagedNode
ARNIl doit être dans l'un des formats suivants :
-
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
ARNIl doit être dans l'un des formats suivants :
-
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 Pour les tables ayant les flux activés, le champ
resources
dans l’événement de plan de données contient à la foisAWS::DynamoDB::Stream
etAWS::DynamoDB::Table
. Si vous spécifiezAWS::DynamoDB::Table
commeresources.type
, les événements de table DynamoDB et les événements de flux DynamoDB sont journalisés par défaut. Pour exclure les événements de flux, ajoutez un filtre sur leeventName
champ.2 Pour enregistrer tous les événements de données pour tous les objets d'un compartiment S3 spécifique, utilisez l'
StartsWith
opérateur et incluez uniquement le compartiment ARN comme valeur correspondante. La barre oblique de fin est intentionnelle ; ne l’excluez pas.3 Pour consigner les événements relatifs à tous les objets d'un point d'accès S3, nous vous recommandons de n'utiliser que le point d'accèsARN, de ne pas inclure le chemin de l'objet et d'utiliser les
NotStartsWith
opérateursStartsWith
or. -
Pour plus d'informations sur les ARN formats des ressources relatives aux événements de données, consultez la section Actions, ressources et clés de condition dans le guide de AWS Identity and Access Management l'utilisateur.
-
-
Pour chaque champ, choisissez + Conditions pour ajouter autant de conditions que vous le souhaitez, jusqu'à un maximum de 500 valeurs spécifiées pour toutes les conditions. Par exemple, pour exclure les événements de données de deux compartiments S3 des événements de données enregistrés lors de votre suivi, vous pouvez définir le champ sur les ressources. ARN, définissez l'opérateur pour ne commence pas par, puis collez-le dans un compartiment ARN S3 ou recherchez les compartiments S3 pour lesquels vous ne souhaitez pas enregistrer d'événements.
Pour ajouter le deuxième compartiment S3, choisissez + Condition, puis répétez l'instruction précédente en collant le dossier ARN for ou en recherchant un autre compartiment.
Note
Il est possible de définir un maximum de 500 valeurs pour tous les sélecteurs d’un journal de suivi. Cela inclut des tableaux de valeurs multiples pour un sélecteur tel que
eventName
. Si vous avez défini des valeurs uniques pour tous les sélecteurs, il est possible d’ajouter un maximum de 500 conditions à un sélecteur. -
Choisir + champ pour ajouter des champs supplémentaires au besoin. Pour éviter les erreurs, il convient de ne pas définir de valeurs conflictuelles ou en double pour les champs. Par exemple, ne spécifiez pas qu'un sélecteur ARN dans un sélecteur soit égal à une valeur, puis spécifiez qu'il n'est ARN pas égal à la même valeur dans un autre sélecteur.
-
-
Pour ajouter un autre type de données sur lequel journaliser les événements de données, choisissez Add data event type (Ajouter un type d'événement de données). Répétez les étapes de 4 à cette étape pour configurer les sélecteurs d’événements avancés pour le type d’événement de données.
-
Après avoir examiné et vérifié vos choix, choisissez Enregistrer les modifications.
Utilisez la procédure suivante pour mettre à jour un journal de suivi existant afin de journaliser des événements de données à l'aide de sélecteurs d'événements de base.
-
Connectez-vous à la CloudTrail console AWS Management Console et ouvrez-la à l'adresse https://console.aws.amazon.com/cloudtrail/
. -
Ouvrez la page Pistes de la CloudTrail console et choisissez le nom de la piste.
Note
Bien que vous puissiez modifier un journal de suivi existant pour journaliser des événements de données, les bonnes pratiques consistent à envisager la création d'un journal de suivi distinct, spécifiquement destiné à la journalisation des événements de données.
-
Pour Événements de données, choisissez Modifier.
-
Pour les compartiments Amazon S3 :
-
Pour Data event source (Source d'événements de données), choisissez S3.
-
Il est possible de choisir de journaliser Tous les compartiments S3 actuels et futurs ou de spécifier des compartiments ou fonctions individuels. Par défaut, les événements de données sont journalisés pour tous les compartiments S3 actuels et futurs.
Note
Le maintien de l'option par défaut Tous les compartiments S3 actuels et futurs active la journalisation des événements de données pour tous les compartiments actuellement présents dans votre AWS compte et pour tous les compartiments que vous créez une fois le suivi terminé. Il permet également de consigner l'activité liée aux événements de données effectuée par n'importe quel utilisateur ou rôle dans votre AWS compte, même si cette activité est effectuée sur un bucket appartenant à un autre AWS compte.
Si vous créez un parcours pour une seule région (à l'aide du AWS CLI), la sélection de l'option Sélectionner tous les compartiments S3 de votre compte active l'enregistrement des événements de données pour tous les compartiments de la même région que votre parcours et pour tous les compartiments que vous créerez ultérieurement dans cette région. Les événements de données relatifs aux compartiments Amazon S3 situés dans d'autres régions ne seront pas enregistrés dans votre AWS compte.
-
Si vous laissez l’option par défaut, Tous les compartiments S3 actuels et futurs, choisissez de journaliser les événements de lecture, les événements d’écriture, ou les deux.
-
Pour sélectionner des compartiments individuels, il convient de vider les boîtes de dialogue Lecture et Écriture pour Tous les compartiments S3 actuels et futurs. Dans Sélection du compartiment individuel, recherchez un compartiment sur lequel journaliser les événements de données. Pour rechercher des compartiments spécifiques, tapez un préfixe de compartiment pour le compartiment souhaité. Il est possible de sélectionner plusieurs compartiments dans cette fenêtre. Choisissez Ajouter un compartiment pour journaliser les événements de données pour d’autres compartiments. Choisissez de journaliser les événements Lecture tels que
GetObject
, les événements Écriture tels quePutObject
, ou les deux.Ce paramètre est prioritaire par rapport aux paramètres que vous définissez pour les compartiments individuels. Par exemple, si vous spécifiez la journalisation des événements Read (Lecture) pour tous les compartiments S3, puis choisissez d'ajouter un compartiment spécifique pour la journalisation des événements de données, Read (Lecture) est déjà sélectionné pour le compartiment que vous avez ajouté. Vous ne pouvez pas effacer la sélection. Vous pouvez uniquement configurer l’option pour Écriture.
Pour supprimer un compartiment de la journalisation, choisissez X.
-
-
Pour ajouter un autre type de données sur lequel journaliser les événements de données, choisissez Add data event type (Ajouter un type d'événement de données).
-
Pour les fonctions Lambda :
-
Pour Data event source (Source d'événement de données), choisissez Lambda.
-
Dans Fonction Lambda, sélectionnez Toutes les régions pour enregistrer toutes les fonctions Lambda, ou Fonction d'entrée ARN pour enregistrer les événements de données sur une fonction spécifique.
Pour consigner les événements de données de toutes les fonctions Lambda de votre compte AWS , sélectionnez Journaliser toutes les fonctions actuelles et futures. Ce paramètre est prioritaire par rapport aux paramètres que vous définissez pour les fonctions individuelles. Toutes les fonctions sont journalisées, même si elles ne sont pas toutes affichées.
Note
Si vous créez un journal de suivi pour toutes les régions, cette sélection active la journalisation des événements de données pour toutes les fonctions se trouvant actuellement dans votre compte AWS et pour toute fonction Lambda que vous êtes susceptible de créer dans n'importe quelle région après avoir achevé la création du journal de suivi. Si vous créez un suivi pour une seule région (en utilisant le AWS CLI), cette sélection active l'enregistrement des événements de données pour toutes les fonctions actuellement présentes dans cette région sur votre AWS compte, ainsi que pour toutes les fonctions Lambda que vous pourriez créer dans cette région une fois que vous aurez fini de créer le journal. Cela n’active pas la journalisation des événements de données pour les fonctions Lambda créées dans d’autres régions.
La journalisation des événements de données pour toutes les fonctions permet également de consigner l'activité des événements de données effectués par n'importe quel utilisateur ou rôle dans votre AWS compte, même si cette activité est effectuée sur une fonction appartenant à un autre AWS compte.
-
Si vous sélectionnez Fonction d'entrée comme ARN, entrez la valeur ARN d'une fonction Lambda.
Note
Si votre compte compte compte plus de 15 000 fonctions Lambda, vous ne pouvez pas afficher ou sélectionner toutes les fonctions dans la CloudTrail console lors de la création d'un journal. Vous pouvez toujours sélectionner l’option de journalisation de toutes les fonctions, même si elles ne sont pas affichées. Si vous souhaitez enregistrer des événements de données pour des fonctions spécifiques, vous pouvez ajouter manuellement une fonction si vous la connaissezARN. Vous pouvez également terminer la création du journal dans la console, puis utiliser la put-event-selectors commande AWS CLI et pour configurer la journalisation des événements de données pour des fonctions Lambda spécifiques. Pour plus d’informations, consultez Gérer les sentiers à l'aide du AWS CLI.
-
-
Pour ajouter un autre type de données sur lequel journaliser les événements de données, choisissez Add data event type (Ajouter un type d'événement de données).
-
Pour les tables DynamoDB :
-
Pour Data event source (Source d'événement de données), choisissez DynamoDB.
-
Dans la sélection d'une table DynamoDB, choisissez Parcourir pour sélectionner une table ou collez le contenu ARN d'une table DynamoDB à laquelle vous avez accès. Une ARN table DynamoDB utilise le format suivant :
arn:
partition
:dynamodb:region
:account_ID
:table/table_name
Pour ajouter un autre tableau, choisissez Ajouter une ligne et recherchez un tableau ou collez le ARN contenu d'un tableau auquel vous avez accès.
-
-
Sélectionnez Enregistrer les modifications.
Enregistrement des événements liés aux données à l'aide du AWS Command Line Interface
Vous pouvez configurer vos journaux de suivi ou vos entrepôts de données d'événement de manière à ce qu'ils journalisent les événements de gestion et de données à l'aide de l' AWS CLI.
Rubriques
Enregistrement des événements liés aux données pour les sentiers à l'aide du AWS CLI
Vous pouvez configurer vos journaux de suivi de manière à ce qu’ils journalisent les événements de gestion et de données à l’aide de l’ AWS CLI.
Note
-
Sachez que si votre compte journalise plus d'une copie des événements de gestion, vous engagez des frais. Des frais sont toujours imputés pour la journalisation des événements de données. Pour plus d'informations, consultez AWS CloudTrail Tarification
. -
Vous pouvez utiliser des sélecteurs d'événements avancés ou des sélecteurs d'événements de base, mais pas les deux. Si vous appliquez des sélecteurs d’événements avancés à un journal de suivi, tous les sélecteurs d’événements de base existants sont remplacés.
-
Si votre journal de suivi utilise des sélecteurs d’événements de base, vous ne pouvez enregistrer que les types de ressources suivants :
-
AWS::DynamoDB::Table
-
AWS::Lambda::Function
-
AWS::S3::Object
Afin de journaliser des types de ressources supplémentaires, vous devez utiliser des sélecteurs d’événements avancés. Pour convertir un journal de suivi en sélecteurs d’événements avancés, exécutez la commande get-event-selectors pour confirmer les sélecteurs d’événements actuels, puis configurez les sélecteurs d’événements avancés pour qu’ils correspondent à la couverture des sélecteurs d’événements précédents, puis ajoutez des sélecteurs pour tous les types de ressources pour lesquels vous souhaitez enregistrer des événements de données.
-
-
Vous pouvez utiliser des sélecteurs d’événements avancés pour filtrer en fonction de la valeur des champs
eventName
,resources.ARN
etreadOnly
, ce qui vous permet de n’enregistrer que les événements de données qui vous intéressent. Pour plus d'informations sur la configuration de ces champs, reportez-vous AdvancedFieldSelectorà la section AWS CloudTrail APIRéférence et Filtrer les événements liés aux données à l'aide de sélecteurs d'événements avancés à cette rubrique.
Pour vérifier que votre journal de suivi journalise effectivement les événements de gestion et de données, veuillez exécuter la commande get-event-selectors
aws cloudtrail get-event-selectors --trail-name
TrailName
La commande renvoie les sélecteurs d'événements pour le parcours.
Rubriques
- Journaliser les événements à l’aide de sélecteurs d’événements avancés
- Enregistrez tous les événements Amazon S3 pour un compartiment Amazon S3 à l'aide de sélecteurs d'événements avancés
- Journaliser Amazon S3 sur les événements AWS Outposts à l’aide de sélecteurs d’événements avancés
- Journaliser les événements à l'aide de sélecteurs d'événements de base
Journaliser les événements à l’aide de sélecteurs d’événements avancés
Note
Si vous appliquez des sélecteurs d’événements avancés à un journal de suivi, tous les sélecteurs d’événements de base existants sont remplacés. Avant de configurer les sélecteurs d’événements avancés, exécutez la commande get-event-selectors pour confirmer les sélecteurs d’événements actuels, puis configurez les sélecteurs d’événements avancés pour qu’ils correspondent à la couverture des sélecteurs d’événements précédents, puis ajoutez des sélecteurs pour tous les événements de données supplémentaires que vous souhaitez enregistrer.
L'exemple suivant crée des sélecteurs d'événements avancés personnalisés pour un parcours nommé TrailName
pour inclure les événements de gestion de lecture et d'écriture (en omettant le readOnly
sélecteur) PutObject
et les événements de DeleteObject
données pour toutes les combinaisons de compartiments et de préfixes Amazon S3, à l'exception d'un bucket nommé DOC-EXAMPLE-BUCKET
et des événements de données pour une fonction nommée. AWS Lambda MyLambdaFunction
Comme il s'agit de sélecteurs d'événements avancés personnalisés, chaque ensemble de sélecteurs a un nom descriptif. Notez qu'une barre oblique finale fait partie de la ARN valeur des compartiments S3.
aws cloudtrail put-event-selectors --trail-name
TrailName
--advanced-event-selectors '[ { "Name": "Log readOnly and writeOnly management events", "FieldSelectors": [ { "Field": "eventCategory", "Equals": ["Management"] } ] }, { "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:::DOC-EXAMPLE-BUCKET/"] } ] }, { "Name": "Log data plane actions on MyLambdaFunction", "FieldSelectors": [ { "Field": "eventCategory", "Equals": ["Data"] }, { "Field": "resources.type", "Equals": ["AWS::Lambda::Function"] }, { "Field": "resources.ARN", "Equals": ["arn:aws:lambda:us-east-2:111122223333:function/MyLambdaFunction"] } ] } ]'
L’exemple renvoie le sélecteur d’événements avancés configuré pour le journal de suivi.
{ "AdvancedEventSelectors": [ { "Name": "Log readOnly and writeOnly management events", "FieldSelectors": [ { "Field": "eventCategory", "Equals": [ "Management" ] } ] }, { "Name": "Log PutObject and DeleteObject events for all but one bucket", "FieldSelectors": [ { "Field": "eventCategory", "Equals": [ "Data" ] }, { "Field": "resources.type", "Equals": [ "AWS::S3::Object" ] }, { "Field": "resources.ARN", "NotStartsWith": [ "arn:aws:s3:::DOC-EXAMPLE-BUCKET/" ] }, ] }, { "Name": "Log data plane actions on MyLambdaFunction", "FieldSelectors": [ { "Field": "eventCategory", "Equals": [ "Data" ] }, { "Field": "resources.type", "Equals": [ "AWS::Lambda::Function" ] }, { "Field": "eventName", "Equals": [ "Invoke" ] }, { "Field": "resources.ARN", "Equals": [ "arn:aws:lambda:us-east-2:111122223333:function/MyLambdaFunction" ] } ] } ], "TrailARN": "arn:aws:cloudtrail:us-east-2:123456789012:trail/
TrailName
" }
Enregistrez tous les événements Amazon S3 pour un compartiment Amazon S3 à l'aide de sélecteurs d'événements avancés
Note
Si vous appliquez des sélecteurs d’événements avancés à un journal de suivi, tous les sélecteurs d’événements de base existants sont remplacés.
L’exemple suivant indique comment configurer votre journal de suivi pour inclure tous les événements de données pour tous les objets Amazon S3 dans un compartiment S3 spécifique. La valeur des événements S3 pour le champ resources.type
est AWS::S3::Object
. Les ARN valeurs des objets S3 et des compartiments S3 étant légèrement différentes, vous devez ajouter l'StartsWith
opérateur for resources.ARN
pour capturer tous les événements.
aws cloudtrail put-event-selectors --trail-name
TrailName
--regionregion
\ --advanced-event-selectors \ '[ { "Name": "S3EventSelector", "FieldSelectors": [ { "Field": "eventCategory", "Equals": ["Data"] }, { "Field": "resources.type", "Equals": ["AWS::S3::Object"] }, { "Field": "resources.ARN", "StartsWith": ["arn:partition
:s3:::DOC-EXAMPLE-BUCKET
/"] } ] } ]'
La commande renvoie l'exemple de résultat suivant:
{ "TrailARN": "arn:aws:cloudtrail:
region
:account_ID
:trail/TrailName
", "AdvancedEventSelectors": [ { "Name": "S3EventSelector", "FieldSelectors": [ { "Field": "eventCategory", "Equals": [ "Data" ] }, { "Field": "resources.type", "Equals": [ "AWS::S3::Object" ] }, { "Field": "resources.ARN", "StartsWith": [ "arn:partition
:s3:::DOC-EXAMPLE-BUCKET
/" ] } ] } ] }
Journaliser Amazon S3 sur les événements AWS Outposts à l’aide de sélecteurs d’événements avancés
Note
Si vous appliquez des sélecteurs d'événements avancés à un journal de suivi, tous les sélecteurs d'événements de base existants sont remplacés.
L’exemple suivant indique comment configurer votre journal de suivi pour inclure tous les événements de données pour tous les Amazon S3 sur les objets Outposts dans votre avant-poste.
aws cloudtrail put-event-selectors --trail-name
TrailName
--regionregion
\ --advanced-event-selectors \ '[ { "Name": "OutpostsEventSelector", "FieldSelectors": [ { "Field": "eventCategory", "Equals": ["Data"] }, { "Field": "resources.type", "Equals": ["AWS::S3Outposts::Object"] } ] } ]'
La commande renvoie l’exemple de résultat suivant.
{ "TrailARN": "arn:aws:cloudtrail:
region
:account_ID
:trail/TrailName
", "AdvancedEventSelectors": [ { "Name": "OutpostsEventSelector", "FieldSelectors": [ { "Field": "eventCategory", "Equals": [ "Data" ] }, { "Field": "resources.type", "Equals": [ "AWS::S3Outposts::Object" ] } ] } ] }
Journaliser les événements à l'aide de sélecteurs d'événements de base
Voici un exemple de résultat de la commande get-event-selectors affichant les sélecteurs d'événements de base. Par défaut, lorsque vous créez un suivi à l'aide du AWS CLI, un journal enregistre tous les événements de gestion. Par défaut, les journaux de suivi ne journalisent pas les événements de données.
{ "TrailARN": "arn:aws:cloudtrail:us-east-2:123456789012:trail/TrailName", "EventSelectors": [ { "IncludeManagementEvents": true, "DataResources": [], "ReadWriteType": "All" } ] }
Pour configurer votre journal de suivi de manière à ce qu’il journalise les événements de gestion et de données, veuillez exécuter la commande put-event-selectors
L'exemple suivant montre comment utiliser des sélecteurs d'événements de base pour configurer votre suivi afin d'inclure tous les événements de gestion et de données pour les objets S3 dans deux préfixes de compartiment S3. Vous pouvez spécifier de 1 à 5 sélecteurs d’événements pour un journal de suivi. Vous pouvez spécifier de 1 à 250 ressources de données pour un journal de suivi.
Note
Le nombre maximal de ressources de données S3 est 250, si vous choisissez de limiter les événements de données à l'aide de sélecteurs d'événements de base.
aws cloudtrail put-event-selectors --trail-name
TrailName
--event-selectors '[{ "ReadWriteType": "All", "IncludeManagementEvents":true, "DataResources": [{ "Type": "AWS::S3::Object", "Values": ["arn:aws:s3:::DOC-EXAMPLE-BUCKET1
/prefix", "arn:aws:s3:::DOC-EXAMPLE-BUCKET2
;/prefix2"] }] }]'
La commande renvoie les sélecteurs d'événements configurés pour le journal de suivi.
{ "TrailARN": "arn:aws:cloudtrail:us-east-2:123456789012:trail/
TrailName
", "EventSelectors": [ { "IncludeManagementEvents": true, "DataResources": [ { "Values": [ "arn:aws:s3:::DOC-EXAMPLE-BUCKET1
/prefix", "arn:aws:s3:::DOC-EXAMPLE-BUCKET2
/prefix2", ], "Type": "AWS::S3::Object" } ], "ReadWriteType": "All" } ] }
Enregistrement des événements de données pour les magasins de données d'événements à l'aide du AWS CLI
Vous pouvez configurer vos magasins de données d’événement de manière à ce qu’ils journalisent les événements de gestion et de données à l’aide de l’ AWS CLI. Utilisez la commande create-event-data-store
update-event-data-store
Pour savoir si votre entrepôt de données d'événement inclut des événements de données, exécutez la commande get-event-data-store
aws cloudtrail get-event-data-store --event-data-store
EventDataStoreARN
La commande renvoie les paramètres de l'entrepôt de données d'événement.
{ "EventDataStoreArn": "arn:aws:cloudtrail:us-east-1:111122223333:eventdatastore/EXAMPLE492-301f-4053-ac5e-EXAMPLE6441aa", "Name": "ebs-data-events", "Status": "ENABLED", "AdvancedEventSelectors": [ { "Name": "Log all EBS direct APIs on EBS snapshots", "FieldSelectors": [ { "Field": "eventCategory", "Equals": [ "Data" ] }, { "Field": "resources.type", "Equals": [ "AWS::EC2::Snapshot" ] } ] } ], "MultiRegionEnabled": true, "OrganizationEnabled": false, "BillingMode": "EXTENDABLE_RETENTION_PRICING", "RetentionPeriod": 366, "TerminationProtectionEnabled": true, "CreatedTimestamp": "2023-11-04T15:57:33.701000+00:00", "UpdatedTimestamp": "2023-11-20T20:37:34.228000+00:00" }
Rubriques
Inclure tous les événements Amazon S3 pour un compartiment
L'exemple suivant montre comment créer un entrepôt de données d'événements pour inclure tous les événements de données pour tous les objets Amazon S3 dans un compartiment S3 spécifique. La valeur des événements S3 pour le champ resources.type
est AWS::S3::Object
. Les ARN valeurs des objets S3 et des compartiments S3 étant légèrement différentes, vous devez ajouter l'StartsWith
opérateur for resources.ARN
pour capturer tous les événements.
aws cloudtrail create-event-data-store --name "
EventDataStoreName
" --multi-region-enabled \ --advanced-event-selectors \ '[ { "Name": "S3EventSelector", "FieldSelectors": [ { "Field": "eventCategory", "Equals": ["Data"] }, { "Field": "resources.type", "Equals": ["AWS::S3::Object"] }, { "Field": "resources.ARN", "StartsWith": ["arn:partition
:s3:::DOC-EXAMPLE-BUCKET
/"] } ] } ]'
La commande renvoie l’exemple de résultat suivant.
{ "EventDataStoreArn": "arn:aws:cloudtrail:us-east-1:111122223333:eventdatastore/EXAMPLE492-301f-4053-ac5e-EXAMPLE441aa", "Name": "EventDataStoreName", "Status": "ENABLED", "AdvancedEventSelectors": [ { "Name": "S3EventSelector", "FieldSelectors": [ { "Field": "eventCategory", "Equals": [ "Data" ] }, { "Field": "resources.ARN", "StartsWith": [ "arn:
partition
:s3:::DOC-EXAMPLE-BUCKET
/" ] }, { "Field": "resources.type", "Equals": [ "AWS::S3::Object" ] } ] } ], "MultiRegionEnabled": true, "OrganizationEnabled": false, "BillingMode": "EXTENDABLE_RETENTION_PRICING", "RetentionPeriod": 366, "TerminationProtectionEnabled": true, "CreatedTimestamp": "2023-11-04T15:57:33.701000+00:00", "UpdatedTimestamp": "2023-11-20T20:49:21.766000+00:00" }
Inclure Amazon S3 dans les événements AWS Outposts
L'exemple suivant montre comment créer un entrepôt de données d'événements qui inclut tous les événements de données pour tous les Amazon S3 sur les objets Outposts dans votre avant-poste.
aws cloudtrail create-event-data-store --name
EventDataStoreName
\ --advanced-event-selectors \ '[ { "Name": "OutpostsEventSelector", "FieldSelectors": [ { "Field": "eventCategory", "Equals": ["Data"] }, { "Field": "resources.type", "Equals": ["AWS::S3Outposts::Object"] } ] } ]'
La commande renvoie l’exemple de résultat suivant.
{ "EventDataStoreArn": "arn:aws:cloudtrail:us-east-1:111122223333:eventdatastore/EXAMPLEb4a8-99b1-4ec2-9258-EXAMPLEc890", "Name": "EventDataStoreName", "Status": "CREATED", "AdvancedEventSelectors": [ { "Name": "OutpostsEventSelector", "FieldSelectors": [ { "Field": "eventCategory", "Equals": [ "Data" ] }, { "Field": "resources.type", "Equals": [ "AWS::S3Outposts::Object" ] } ] } ], "MultiRegionEnabled": true, "OrganizationEnabled": false, "BillingMode": "EXTENDABLE_RETENTION_PRICING", "RetentionPeriod": 366, "TerminationProtectionEnabled": true, "CreatedTimestamp": "2023-02-20T21:00:17.673000+00:00", "UpdatedTimestamp": "2023-02-20T21:00:17.820000+00:00" }
La journalisation des événements de données pour la conformité AWS Config
Si vous utilisez des packs de AWS Config conformité pour aider votre entreprise à maintenir la conformité aux normes formalisées, telles que celles requises par le Federal Risk and Authorization Management Program (FedRAMP) ou le National Institute of Standards and Technology (NIST), les packs de conformité pour les cadres de conformité nécessitent généralement que vous enregistriez les événements de données pour les compartiments Amazon S3, au minimum. Les packs de conformité pour les cadres de conformité comprennent une règle gérée appelée cloudtrail-s3-dataevents-enabled
, qui vérifie la journalisation des événements de données S3 dans votre compte. De nombreux packs de conformité qui ne sont pas associés aux cadres de conformité nécessitent également la journalisation des événements de données S3. Voici des exemples de packs de conformité qui intègrent cette règle.
Pour obtenir la liste complète des exemples de packs de conformité disponibles dans AWS Config, consultez la section Modèles d'exemples de packs de conformité dans le Guide du AWS Config développeur.
Enregistrement des événements liés aux données à l'aide du AWS SDKs
Exécutez l'GetEventSelectorsopération pour voir si votre parcours enregistre des événements de données. Vous pouvez configurer vos sentiers pour enregistrer les événements liés aux données en exécutant l'PutEventSelectorsopération. Pour plus d'informations, consultez la AWS CloudTrail APIréférence.
Exécutez l'GetEventDataStoreopération pour voir si votre banque de données d'événements enregistre des événements de données. Vous pouvez configurer vos magasins de données d'événements pour inclure des événements de données en exécutant les UpdateEventDataStoreopérations CreateEventDataStoreor et en spécifiant des sélecteurs d'événements avancés. Pour plus d'informations, reportez-vous à la section Créez, mettez à jour et gérez des banques de données d'événements à l'aide du AWS CLI et à la AWS CloudTrail APIréférence.