Journalisation entre comptes CloudTrail - AWS Lake Formation

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 entre comptes CloudTrail

Lake Formation fournit une piste d'audit centralisée de tous les accès entre comptes aux données de votre lac de données. Lorsqu'un AWS compte destinataire accède aux données d'une table partagée, Lake Formation copie l' CloudTrail événement dans les CloudTrail journaux du compte propriétaire. Les événements copiés incluent les requêtes portant sur les données par des services intégrés tels qu' Amazon Athena Amazon Redshift Spectrum, et les accès aux données par AWS Glue emplois.

CloudTrail les événements relatifs aux opérations entre comptes sur les ressources du catalogue de données sont copiés de la même manière.

En tant que propriétaire de ressources, si vous activez la journalisation au niveau des objets dans Amazon S3, vous pouvez exécuter des requêtes qui associent des CloudTrail événements S3 à des événements Lake Formation CloudTrail afin de déterminer les comptes qui ont accédé à vos compartiments S3.

Inclure les identités principales dans les journaux intercomptes CloudTrail

Par défaut, les CloudTrail événements intercomptes ajoutés aux journaux du destinataire de la ressource partagée et copiés dans les journaux du propriétaire de la ressource contiennent uniquement l'identifiant AWS principal du compte externe, et non le nom de ressource Amazon lisible par l'homme (ARN) du principal (principal). ARN Lorsque vous partagez des ressources dans des limites fiables, par exemple au sein d'une même organisation ou d'une même équipe, vous pouvez choisir d'inclure le directeur ARN dans les CloudTrail événements. Les comptes propriétaires des ressources peuvent ensuite suivre les principaux des comptes des destinataires qui accèdent à leurs propres ressources.

Important

En tant que bénéficiaire d'une ressource partagée, pour voir le responsable des événements ARN dans vos propres CloudTrail journaux, vous devez choisir de partager le principal ARN avec le compte du propriétaire.

Si l'accès aux données se fait via un lien de ressource, deux événements sont enregistrés dans le compte du destinataire de la ressource partagée : un pour l'accès au lien de ressource et un pour l'accès à la ressource cible. L'événement pour l'accès au lien de ressource inclut le principalARN. L'événement pour l'accès à la ressource cible n'inclut pas le principal ARN sans l'opt-in. L'événement d'accès au lien de ressource n'est pas copié sur le compte du propriétaire.

Ce qui suit est un extrait d'un CloudTrail événement multicompte par défaut (sans opt-in). Le compte effectuant l'accès aux données est le 1111-2222-3333. Il s'agit du journal affiché à la fois dans le compte d'appel et dans le compte du propriétaire de la ressource. Lake Formation remplit les journaux dans les deux comptes dans le cas de comptes croisés.

{ "eventVersion": "1.05", "userIdentity": { "type": "AWSAccount", "principalId": "AROAQGFTBBBGOBWV2EMZA:GlueJobRunnerSession", "accountId": "111122223333" }, "eventSource": "lakeformation.amazonaws.com", "eventName": "GetDataAccess", ... ... "additionalEventData": { "requesterService": "GLUE_JOB", "lakeFormationRoleSessionName": "AWSLF-00-GL-111122223333-G13T0Rmng2" }, ... }

En tant que consommateur de ressources partagées, lorsque vous choisissez d'inclure le principalARN, l'extrait devient le suivant. Le lakeFormationPrincipal champ représente le rôle final ou l'utilisateur exécutant la requête via Amazon Athena, Amazon Redshift Spectrum ou AWS Glue emplois.

{ "eventVersion": "1.05", "userIdentity": { "type": "AWSAccount", "principalId": "AROAQGFTBBBGOBWV2EMZA:GlueJobRunnerSession", "accountId": "111122223333" }, "eventSource": "lakeformation.amazonaws.com", "eventName": "GetDataAccess", ... ... "additionalEventData": { "requesterService": "GLUE_JOB", "lakeFormationPrincipal": "arn:aws:iam::111122223333:role/ETL-Glue-Role", "lakeFormationRoleSessionName": "AWSLF-00-GL-111122223333-G13T0Rmng2" }, ... }
Pour choisir d'inclure le principal ARNs dans les journaux intercomptes CloudTrail
  1. Ouvrez la console Lake Formation à l'adresse https://console.aws.amazon.com/lakeformation/.

    Connectez-vous en tant qu'Administratorutilisateur ou en tant qu'utilisateur disposant de la Administrator Access IAM politique.

  2. Dans le panneau de navigation, sélectionnez Settings (Paramètres).

  3. Sur la page des paramètres du catalogue de données, dans la AWS CloudTrail section Autorisations par défaut pour, pour les propriétaires de ressources, entrez un ou plusieurs comptes de propriétaire de AWS ressourcesIDs.

    Appuyez sur Entrée après chaque identifiant de compte.

  4. Choisissez Save (Enregistrer).

    Désormais, les CloudTrail événements intercomptes enregistrés dans les journaux du destinataire de la ressource partagée et du propriétaire de la ressource contiennent le principalARN.

Consultation des CloudTrail journaux pour l'accès entre comptes Amazon S3

En tant que propriétaire de ressources partagées, vous pouvez interroger les CloudTrail journaux S3 pour déterminer les comptes qui ont accédé à vos compartiments Amazon S3 (à condition que vous ayez activé la journalisation au niveau des objets dans Amazon S3). Cela s'applique uniquement aux sites S3 que vous avez enregistrés auprès de Lake Formation. Si les consommateurs de ressources partagées choisissent d'inclure le principal ARNs dans les CloudTrail journaux de Lake Formation, vous pouvez déterminer les rôles ou les utilisateurs qui ont accédé aux compartiments.

Lorsque vous exécutez des requêtes avec Amazon Athena, vous pouvez joindre les CloudTrail événements Lake Formation et les CloudTrail événements S3 sur la propriété du nom de session. Les requêtes peuvent également filtrer les événements Lake Formation sureventName="GetDataAccess", et les événements S3 sur eventName="Get Object" oueventName="Put Object".

Ce qui suit est un extrait d'un CloudTrail événement inter-comptes de Lake Formation au cours duquel les données d'un emplacement S3 enregistré ont été consultées.

{ "eventSource": "lakeformation.amazonaws.com", "eventName": "GetDataAccess", .............. .............. "additionalEventData": { "requesterService": "GLUE_JOB", "lakeFormationPrincipal": "arn:aws:iam::111122223333:role/ETL-Glue-Role", "lakeFormationRoleSessionName": "AWSLF-00-GL-111122223333-B8JSAjo5QA" } }

La valeur de la lakeFormationRoleSessionName AWSLF-00-GL-111122223333-B8JSAjo5QA clé peut être jointe au nom de session dans la principalId clé de l' CloudTrail événement S3. Ce qui suit est un extrait de l' CloudTrail événement S3. Il indique l'emplacement du nom de session.

{ "eventSource": "s3.amazonaws.com", "eventName": "Get Object" .............. .............. "principalId": "AROAQSOX5XXUR7D6RMYLR:AWSLF-00-GL-111122223333-B8JSAjo5QA", "arn": "arn:aws:sets::111122223333:assumed-role/Deformationally/AWSLF-00-GL-111122223333-B8JSAjo5QA", "session Context": { "session Issuer": { "type": "Role", "principalId": "AROAQSOX5XXUR7D6RMYLR", "arn": "arn:aws:iam::111122223333:role/aws-service-role/lakeformation.amazonaws.com/Deformationally", "accountId": "111122223333", "user Name": "Deformationally" }, .............. .............. }

Le nom de session est formaté comme suit :

AWSLF-<version-number>-<query-engine-code>-<account-id->-<suffix>
version-number

La version de ce format, actuellement00. Si le format du nom de session change, la prochaine version sera la suivante01.

query-engine-code

Indique l'entité qui a accédé aux données. Les valeurs actuelles sont les suivantes :

GL AWS Glue ETLtravail
AT Athena
RE Amazon Redshift Spectrum
account-id

L'identifiant du AWS compte qui a demandé les informations d'identification à Lake Formation.

suffix

Chaîne générée de manière aléatoire.