Registrazione su più account CloudTrail - AWS Lake Formation

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Registrazione su più account CloudTrail

Lake Formation fornisce un audit trail centralizzato di tutti gli accessi tra account ai dati nel tuo data lake. Quando un AWS account destinatario accede ai dati in una tabella condivisa, Lake Formation copia l' CloudTrail evento nei log dell' CloudTrail account proprietario. Gli eventi copiati includono interrogazioni sui dati da parte di servizi integrati come Amazon Redshift Spectrum Amazon Athena e accessi ai dati tramite processi. AWS Glue

CloudTrail gli eventi per le operazioni tra account sulle risorse di Data Catalog vengono copiati in modo analogo.

In qualità di proprietario delle risorse, se abiliti la registrazione a livello di oggetto in Amazon S3, puoi eseguire query che uniscono gli eventi S3 agli eventi di Lake CloudTrail Formation per determinare CloudTrail gli account che hanno avuto accesso ai tuoi bucket S3.

Inclusione delle identità principali nei log di più account CloudTrail

Per impostazione predefinita, gli CloudTrail eventi tra account aggiunti ai log del destinatario della risorsa condivisa e copiati nei log del proprietario della risorsa contengono solo l'ID AWS principale dell'account esterno, non il nome Amazon Resource Name (ARN) leggibile dall'uomo del principale (ARN principale). Quando condividi risorse all'interno di confini affidabili, ad esempio all'interno della stessa organizzazione o team, puoi scegliere di includere l'ARN principale negli CloudTrail eventi. Gli account dei proprietari delle risorse possono quindi tenere traccia dei principali account dei destinatari che accedono alle risorse di proprietà.

Importante

In qualità di destinatario di risorse condivise, per visualizzare l'ARN principale negli eventi nei propri CloudTrail registri, è necessario scegliere di condividere l'ARN principale con l'account del proprietario.

Se l'accesso ai dati avviene tramite un collegamento alle risorse, nell'account del destinatario della risorsa condivisa vengono registrati due eventi: uno per l'accesso al collegamento alle risorse e uno per l'accesso alla risorsa di destinazione. L'evento per l'accesso al link di risorsa include l'ARN principale. L'evento per l'accesso alle risorse di destinazione non include l'ARN principale senza l'opt-in. L'evento di accesso al collegamento alle risorse non viene copiato nell'account del proprietario.

Di seguito è riportato un estratto di un CloudTrail evento predefinito tra più account (senza opt-in). L'account che esegue l'accesso ai dati è 1111-2222-3333. Questo è il registro visualizzato sia nell'account chiamante che nell'account del proprietario della risorsa. Lake Formation compila i log in entrambi gli account nel caso di più account.

{ "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" }, ... }

In qualità di consumatore di risorse condivise, quando scegli di includere l'ARN principale, l'estratto diventa il seguente. Il lakeFormationPrincipal campo rappresenta il ruolo finale o l'utente che esegue la query tramite Amazon Athena, Amazon Redshift Spectrum o job. AWS Glue

{ "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" }, ... }
Per attivare l'inclusione degli ARN principali nei log di più account CloudTrail
  1. Aprire la console Lake Formation all'indirizzo https://console.aws.amazon.com/lakeformation/.

    Accedi come utente o come Administrator utente con la policy IAM. Administrator Access

  2. Nel pannello di navigazione scegli Impostazioni.

  3. Nella pagina delle impostazioni del catalogo dati, nella AWS CloudTrail sezione Autorizzazioni predefinite per, per Proprietari delle risorse, inserisci uno o più ID di account del proprietario della AWS risorsa.

    Premi Invio dopo ogni ID account.

  4. Selezionare Salva.

    Ora CloudTrail gli eventi tra account archiviati nei log sia per il destinatario della risorsa condivisa che per il proprietario della risorsa contengono l'ARN principale.

Interrogazione dei CloudTrail log per l'accesso a più account Amazon S3

In qualità di proprietario di risorse condivise, puoi interrogare CloudTrail i log di S3 per determinare gli account che hanno avuto accesso ai tuoi bucket Amazon S3 (a condizione che tu abbia abilitato la registrazione a livello di oggetto in Amazon S3). Questo vale solo per le sedi S3 che hai registrato con Lake Formation. Se i consumatori di risorse condivise scelgono di includere i Ran principali nei CloudTrail log di Lake Formation, puoi determinare i ruoli o gli utenti che hanno avuto accesso ai bucket.

Quando esegui query con Amazon Athena, puoi unire gli eventi Lake Formation e CloudTrail gli eventi S3 nella CloudTrail proprietà del nome della sessione. Le query possono anche filtrare gli eventi di Lake Formation su e eventName="GetDataAccess" gli eventi S3 su eventName="Get Object" o. eventName="Put Object"

Di seguito è riportato un estratto di un CloudTrail evento cross-account di Lake Formation in cui è stato effettuato l'accesso ai dati in una posizione S3 registrata.

{ "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" } }

Il valore lakeFormationRoleSessionName chiave,AWSLF-00-GL-111122223333-B8JSAjo5QA, può essere unito al nome della sessione nella principalId chiave dell'evento S3. CloudTrail Di seguito è riportato un estratto dell'evento S3. CloudTrail Mostra la posizione del nome della sessione.

{ "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" }, .............. .............. }

Il nome della sessione è formattato come segue:

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

La versione di questo formato, attualmente00. Se il formato del nome della sessione cambia, sarà la versione successiva01.

query-engine-code

Indica l'entità che ha avuto accesso ai dati. I valori correnti sono:

GL AWS GlueLavoro ETL
AT Athena
RE Amazon Redshift Spectrum
account-id

L'ID AWS dell'account che ha richiesto le credenziali a Lake Formation.

suffix

Una stringa generata casualmente.