Fase 2: Prerequisiti per la condivisione tra account di Lake Formation - 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à.

Fase 2: Prerequisiti per la condivisione tra account di Lake Formation

Prima di condividere le risorse con Lake Formation, esistono dei prerequisiti sia per il metodo di controllo degli accessi basato su tag che per il metodo delle risorse denominate.

Prerequisiti completi per il controllo degli accessi basato su tag per la condivisione dei dati tra account
  • Per ulteriori informazioni sui requisiti di condivisione dei dati tra account, consulta la Prerequisiti sezione del capitolo Condivisione dei dati tra account.

    Per condividere le risorse di Data Catalog con la versione 3 o successiva delle impostazioni della versione dell'account Cross, il concedente deve disporre delle autorizzazioni IAM definite nella policy AWS gestita del tuo account. AWSLakeFormationCrossAccountManager

    Se utilizzi la versione 1 o la versione 2 delle impostazioni della versione dell'account Cross, prima di poter utilizzare il metodo di controllo dell'accesso basato su tag per concedere l'accesso alle risorse tra account diversi, devi aggiungere il seguente oggetto di JSON autorizzazione alla politica delle risorse di Data Catalog nell'account produttore. Ciò concede all'account consumatore l'autorizzazione ad accedere al Data Catalog quando glue:EvaluatedByLakeFormationTags è vero. Inoltre, questa condizione diventa vera per le risorse a cui hai concesso l'autorizzazione utilizzando i tag di autorizzazione di Lake Formation sull'account del consumatore. Questa politica è necessaria per tutte le persone Account AWS a cui concedi le autorizzazioni.

    La seguente politica deve essere inclusa in un Statement elemento. Discuteremo la politica IAM completa nella prossima sezione.

    { "Effect": "Allow", "Action": [ "glue:*" ], "Principal": { "AWS": [ "consumer-account-id" ] }, "Resource": [ "arn:aws:glue:region:account-id:table/*", "arn:aws:glue:region:account-id:database/*", "arn:aws:glue:region:account-id:catalog" ], "Condition": { "Bool": { "glue:EvaluatedByLakeFormationTags": true } } }
Completa i prerequisiti per la condivisione tra account del metodo delle risorse denominate
  1. Se nel tuo account non è presente alcuna politica sulle risorse di Data Catalog, il cross-account di Lake Formation ti consente di procedere come al solito. Tuttavia, se esiste una politica in materia di risorse di Data Catalog, devi aggiungere la seguente dichiarazione per consentire che le concessioni tra account abbiano esito positivo se effettuate con il metodo della risorsa denominata. Se prevedi di utilizzare solo il metodo della risorsa denominata o solo il metodo di controllo dell'accesso basato su tag, puoi saltare questo passaggio. In questo tutorial, valutiamo entrambi i metodi e dobbiamo aggiungere la seguente politica.

    La seguente politica deve trovarsi all'interno di un Statement elemento. Discuteremo la politica IAM completa nella prossima sezione.

    { "Effect": "Allow", "Action": [ "glue:ShareResource" ], "Principal": { "Service":"ram.amazonaws.com" }, "Resource": [ "arn:aws:glue:region:account-id:table/*/*", "arn:aws:glue:region:account-id:database/*", "arn:aws:glue:region:account-id:catalog" ] }
  2. Quindi, aggiungi la politica AWS Glue Data Catalog delle risorse utilizzando AWS Command Line Interface (AWS CLI).

    Se concedi autorizzazioni per più account utilizzando sia il metodo di controllo degli accessi basato su tag che il metodo Named Resource, devi impostare l'EnableHybridargomento su «true» quando aggiungi le politiche precedenti. Perché questa opzione non è attualmente supportata sulla console ed è necessario utilizzare l'API e. glue:PutResourcePolicy AWS CLI

    Innanzitutto, crea un documento di policy (come policy.json) e aggiungi le due politiche precedenti. Sostituisci consumer-account-idcon l'ID dell'account di chi Account AWS riceve la sovvenzione, la regione con la regione del catalogo dati contenente i database e le tabelle per i quali stai concedendo le autorizzazioni e l'account-id con l'ID del produttore. Account AWS

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "ram.amazonaws.com" }, "Action": "glue:ShareResource", "Resource": [ "arn:aws:glue:region:account-id:table/*/*", "arn:aws:glue:region:account-id:database/*", "arn:aws:glue:region:account-id:catalog" ] }, { "Effect": "Allow", "Principal": { "AWS": "region:account-id" }, "Action": "glue:*", "Resource": [ "arn:aws:glue:region:account-id:table/*/*", "arn:aws:glue:region:account-id:database/*", "arn:aws:glue:region:account-id:catalog" ], "Condition": { "Bool": { "glue:EvaluatedByLakeFormationTags": "true" } } } ] }

    Immettete il seguente comando. AWS CLI Sostituisci glue-resource-policycon i valori corretti (ad esempio file: //policy.json).

    aws glue put-resource-policy --policy-in-json glue-resource-policy --enable-hybrid TRUE

    Per ulteriori informazioni, vedere. put-resource-policy