Configurare AWS 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à.

Configurare AWS Lake Formation

Le sezioni seguenti forniscono informazioni sulla configurazione di Lake Formation per la prima volta. Non tutti gli argomenti di questa sezione sono necessari per iniziare a usare Lake Formation. Puoi utilizzare le istruzioni per configurare il modello di autorizzazioni Lake Formation per gestire AWS Glue Data Catalog gli oggetti e le posizioni dei dati esistenti in Amazon Simple Storage Service (Amazon S3) Simple Storage Service (Amazon S3).

Questa sezione mostra come configurare le risorse di Lake Formation in due modi diversi:

  • Utilizzando un AWS CloudFormation modello

  • Utilizzo della console Lake Formation

Per configurare Lake Formation tramite AWS console, vai aCrea un amministratore del data lake.

Configura le risorse di Lake Formation utilizzando il AWS CloudFormation modello

Nota

Lo AWS CloudFormation stack esegue i passaggi da 1 a 6 di cui sopra, tranne i passaggi 2 e 5. Esegui Modifica il modello di autorizzazione predefinito o utilizza la modalità di accesso ibrida e Integrazione di IAM Identity Center manualmente dalla console Lake Formation.

  1. Accedi alla AWS CloudFormation console all'indirizzo https://console.aws.amazon.com/cloudformation come amministratore IAM nella regione Stati Uniti orientali (Virginia settentrionale).

  2. Scegli Launch Stack.

  3. Scegli Avanti nella schermata Crea stack.

  4. Inserisci un nome per lo stack.

  5. Per DatalakeAdminNamee DatalakeAdminPassword, inserisci il nome utente e la password per l'utente amministratore di Data Lake.

  6. Per DatalakeUser1Name e DatalakeUser1Password, inserisci il nome utente e la password per l'utente analista di data lake.

  7. Per DataLakeBucketName, inserisci il nuovo nome del bucket che verrà creato.

  8. Seleziona Successivo.

  9. Nella pagina successiva, scegli Avanti.

  10. Controlla i dettagli nella pagina finale e seleziona Riconosco che AWS CloudFormation potrebbe creare risorse IAM.

  11. Scegli Crea.

    La creazione dello stack può richiedere fino a due minuti.

Pulizia delle risorse

Se desideri ripulire le risorse dello AWS CloudFormation stack:

  1. Annulla la registrazione del bucket Amazon S3 creato dallo stack e registrato come posizione di data lake.

  2. Elimina lo stack. AWS CloudFormation Questo eliminerà tutte le risorse create dallo stack.

Crea un amministratore del data lake

Gli amministratori di Data Lake sono inizialmente gli unici utenti o ruoli AWS Identity and Access Management (IAM) che possono concedere le autorizzazioni di Lake Formation sulle posizioni dei dati e sulle risorse del Data Catalog a qualsiasi principale (incluso se stesso). Per ulteriori informazioni sulle funzionalità di amministratore del data lake, consulta. Autorizzazioni implicite di Lake Formation Per impostazione predefinita, Lake Formation consente di creare fino a 30 amministratori di data lake.

Puoi creare un amministratore di data lake utilizzando la console Lake Formation o il PutDataLakeSettings funzionamento dell'API Lake Formation.

Le seguenti autorizzazioni sono necessarie per creare un amministratore del data lake. L'Administratorutente dispone implicitamente di queste autorizzazioni.

  • lakeformation:PutDataLakeSettings

  • lakeformation:GetDataLakeSettings

Se concedi la AWSLakeFormationDataAdmin policy a un utente, quell'utente non sarà in grado di creare altri utenti amministratori di Lake Formation.

Per creare un amministratore del data lake (console)
  1. Se l'utente che deve essere amministratore del data lake non esiste ancora, utilizza la console IAM per crearlo. Altrimenti, scegli un utente esistente che sarà l'amministratore del data lake.

    Nota

    Ti consigliamo di non selezionare un utente amministrativo IAM (utente con la policy AdministratorAccess AWS gestita) come amministratore del data lake.

    Allega le seguenti politiche AWS gestite all'utente:

    Policy Obbligatorio? Note
    AWSLakeFormationDataAdmin Obbligatorio Autorizzazioni di base per gli amministratori del data lake. Questa policy AWS gestita contiene un divieto esplicito per il funzionamento dell'API Lake Formation, PutDataLakeSetting che impedisce agli utenti di creare nuovi amministratori di data lake.
    AWSGlueConsoleFullAccess, CloudWatchLogsReadOnlyAccess Facoltativo Allega queste politiche se l'amministratore del data lake intende risolvere i problemi dei flussi di lavoro creati dai blueprint di Lake Formation. Queste politiche consentono all'amministratore del data lake di visualizzare le informazioni sulla risoluzione dei problemi nella AWS Glue console e nella Amazon CloudWatch Logs console. Per informazioni sui flussi di lavoro, consultaImportazione di dati utilizzando i flussi di lavoro in Lake Formation.
    AWSLakeFormationCrossAccountManager Facoltativo Allega questa policy per consentire all'amministratore del data lake di concedere e revocare le autorizzazioni tra più account sulle risorse di Data Catalog. Per ulteriori informazioni, consulta Condivisione dei dati tra account in Lake Formation.
    AmazonAthenaFullAccess Facoltativo Allega questa policy se l'amministratore del data lake eseguirà le query in. Amazon Athena
  2. Allega la seguente policy in linea, che concede all'amministratore del data lake l'autorizzazione a creare il ruolo collegato al servizio Lake Formation. Un nome suggerito per la policy è. LakeFormationSLR

    Il ruolo collegato ai servizi consente all'amministratore del data lake di registrare più facilmente le sedi Amazon S3 con Lake Formation. Per ulteriori informazioni sul ruolo collegato ai servizi di Lake Formation, vedere. Utilizzo di ruoli collegati ai servizi per Lake Formation

    Importante

    In tutti i criteri seguenti, sostituiscili <account-id>con un numero di AWS account valido.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "iam:CreateServiceLinkedRole", "Resource": "*", "Condition": { "StringEquals": { "iam:AWSServiceName": "lakeformation.amazonaws.com" } } }, { "Effect": "Allow", "Action": [ "iam:PutRolePolicy" ], "Resource": "arn:aws:iam::<account-id>:role/aws-service-role/lakeformation.amazonaws.com/AWSServiceRoleForLakeFormationDataAccess" } ] }
  3. (Facoltativo) Allega la seguente politica PassRole in linea all'utente. Questa policy consente all'amministratore del data lake di creare ed eseguire flussi di lavoro. L'iam:PassRoleautorizzazione consente al flusso di lavoro di assumere il ruolo di LakeFormationWorkflowRole creare crawler e job e di assegnare il ruolo ai crawler e ai job creati. Un nome suggerito per la policy è. UserPassRole

    Importante

    <account-id>Sostituiscilo con un numero di AWS conto valido.

    { "Version": "2012-10-17", "Statement": [ { "Sid": "PassRolePermissions", "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": [ "arn:aws:iam::<account-id>:role/LakeFormationWorkflowRole" ] } ] }
  4. (Facoltativo) Allega questa politica in linea aggiuntiva se il tuo account concederà o riceverà autorizzazioni Lake Formation per più account. Questa policy consente all'amministratore del data lake di visualizzare e accettare AWS Resource Access Manager (AWS RAM) gli inviti alla condivisione di risorse. Inoltre, per gli amministratori del data lake dell'account di AWS Organizations gestione, la policy include l'autorizzazione ad abilitare le concessioni tra account alle organizzazioni. Per ulteriori informazioni, consulta Condivisione dei dati tra account in Lake Formation.

    Un nome suggerito per la policy è. RAMAccess

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ram:AcceptResourceShareInvitation", "ram:RejectResourceShareInvitation", "ec2:DescribeAvailabilityZones", "ram:EnableSharingWithAwsOrganization" ], "Resource": "*" } ] }
  5. Apri la AWS Lake Formation console all'indirizzo https://console.aws.amazon.com/lakeformation/ e accedi come utente amministratore che hai creato Crea un utente con accesso amministrativo o come AdministratorAccess utente con policy AWS gestite dagli utenti.

  6. Se viene visualizzata la finestra Welcome to Lake Formation, scegli l'utente IAM che hai creato o selezionato nello Step 1, quindi scegli Inizia.

  7. Se non vedi la finestra Welcome to Lake Formation, esegui i seguenti passaggi per configurare un Lake Formation Administrator.

    1. Nel pannello di navigazione, in Amministratori, scegli Ruoli e attività amministrative. Nella sezione Amministratori di Data Lake della pagina della console, scegli Aggiungi.

    2. Nella finestra di dialogo Aggiungi amministratori, in Tipo di accesso, scegli Amministratore del data lake.

    3. Per gli utenti e i ruoli IAM, scegli l'utente IAM che hai creato o selezionato nel passaggio 1, quindi scegli Salva.

Modifica il modello di autorizzazione predefinito o utilizza la modalità di accesso ibrida

Lake Formation inizia con le impostazioni «Usa solo il controllo di accesso IAM» abilitate per la compatibilità con AWS Glue Data Catalog il comportamento esistente. Queste impostazioni ti consentono di gestire l'accesso ai tuoi dati nel data lake e ai relativi metadati tramite policy IAM e policy bucket di Amazon S3.

Per facilitare la transizione delle autorizzazioni del data lake da un modello IAM e Amazon S3 alle autorizzazioni Lake Formation, ti consigliamo di utilizzare la modalità di accesso ibrida per Data Catalog. Con la modalità di accesso ibrida, hai a disposizione un percorso incrementale in cui puoi abilitare le autorizzazioni di Lake Formation per un set specifico di utenti senza interrompere altri utenti o carichi di lavoro esistenti.

Per ulteriori informazioni, consulta Modalità di accesso ibrida.

Disabilita le impostazioni predefinite per spostare tutti gli utenti esistenti di una tabella su Lake Formation in un unico passaggio.

Importante

Se disponi di AWS Glue Data Catalog database e tabelle esistenti, non seguire le istruzioni in questa sezione. Seguire invece le istruzioni in Aggiornamento delle autorizzazioni per AWS Glue i dati al modello AWS Lake Formation.

avvertimento

Se disponi di un'automazione che crea database e tabelle nel Data Catalog, i passaggi seguenti potrebbero causare il fallimento dei processi di automazione e di estrazione, trasformazione e caricamento (ETL) a valle. Procedi solo dopo aver modificato i processi esistenti o concesso autorizzazioni esplicite di Lake Formation ai responsabili richiesti. Per informazioni sulle autorizzazioni di Lake Formation, vedereRiferimento alle autorizzazioni di Lake Formation.

Per modificare le impostazioni predefinite del Data Catalog
  1. Continua nella console di Lake Formation all'indirizzo https://console.aws.amazon.com/lakeformation/. Assicurati di aver effettuato l'accesso come utente amministratore che hai creato Crea un utente con accesso amministrativo o come utente con la policy AdministratorAccess AWS gestita.

  2. Modifica le impostazioni del Data Catalog:

    1. Nel riquadro di navigazione, in Amministrazione, scegli Impostazioni Data Catalog.

    2. Deseleziona entrambe le caselle di controllo e scegli Salva.

      La finestra di dialogo delle impostazioni del catalogo dati ha il sottotitolo «Autorizzazioni predefinite per database e tabelle appena creati» e ha due caselle di controllo, descritte nel testo.
  3. Revoca l'IAMAllowedPrincipalsautorizzazione per i creatori di database.

    1. Nel riquadro di navigazione, in Amministrazione, scegli Ruoli e attività amministrative.

    2. Nella pagina della console Ruoli e attività amministrative, nella sezione Creatori di database, seleziona il IAMAllowedPrincipals gruppo e scegli Revoca.

      Viene visualizzata la finestra di dialogo Revoca autorizzazioni, che indica che IAMAllowedPrincipals dispone dell'autorizzazione Crea database.

    3. Scegli Revoke.

Assegna le autorizzazioni agli utenti di Lake Formation

Crea un utente per accedere al data lake in. AWS Lake Formation Questo utente dispone dei privilegi minimi per interrogare il data lake.

Per ulteriori informazioni sulla creazione di utenti o gruppi, consulta le identità IAM nella IAM User Guide.

Per assegnare a un utente non amministratore le autorizzazioni per accedere ai dati di Lake Formation
  1. Apri la console IAM all'indirizzo https://console.aws.amazon.com/iam e accedi come utente amministratore che hai creato Crea un utente con accesso amministrativo o come utente con la policy AdministratorAccess AWS gestita.

  2. Scegli Utenti o Gruppi di utenti.

  3. Nell'elenco, scegli il nome dell'utente o del gruppo in cui integrare una policy.

    Seleziona Autorizzazioni.

  4. Scegli Aggiungi autorizzazioni e scegli Allega politiche direttamente. Entra Athena nel campo di testo Filtra le politiche. Nell'elenco dei risultati, seleziona la casella perAmazonAthenaFullAccess.

  5. Scegli il pulsante Crea politica. Nella pagina Crea policy, scegli la scheda JSON. Copia e incolla il seguente codice nell'editor delle politiche.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "lakeformation:GetDataAccess", "glue:GetTable", "glue:GetTables", "glue:SearchTables", "glue:GetDatabase", "glue:GetDatabases", "glue:GetPartitions", "lakeformation:GetResourceLFTags", "lakeformation:ListLFTags", "lakeformation:GetLFTag", "lakeformation:SearchTablesByLFTags", "lakeformation:SearchDatabasesByLFTags" ], "Resource": "*" } ] }
  6. Scegli il pulsante Avanti in basso fino a visualizzare la pagina di revisione della politica. Inserisci un nome per la politica, ad esempioDatalakeUserBasic. Scegli Crea politica, quindi chiudi la scheda Politiche o la finestra del browser.

Configura una posizione Amazon S3 per il tuo data lake

Per utilizzare Lake Formation per gestire e proteggere i dati nel tuo data lake, devi prima registrare una sede Amazon S3. Quando registri una posizione, vengono registrati quel percorso Amazon S3 e tutte le cartelle in quel percorso, il che consente a Lake Formation di applicare le autorizzazioni a livello di storage. Quando l'utente richiede dati da un motore integrato come Amazon Athena, Lake Formation fornisce l'accesso ai dati anziché utilizzare le autorizzazioni degli utenti.

Quando registri una posizione, specifichi un ruolo IAM che concede autorizzazioni di lettura/scrittura su quella posizione. Lake Formation assume questo ruolo quando fornisce credenziali temporanee a AWS servizi integrati che richiedono l'accesso ai dati nella posizione registrata di Amazon S3. Puoi specificare il ruolo collegato ai servizi (SLR) di Lake Formation o creare il tuo ruolo.

Utilizzate un ruolo personalizzato nelle seguenti situazioni:

Il ruolo scelto deve disporre delle autorizzazioni necessarie, come descritto in. Requisiti per i ruoli utilizzati per registrare le sedi Per istruzioni su come registrare una sede Amazon S3, consulta. Aggiungere una posizione Amazon S3 al tuo data lake

(Facoltativo) Impostazioni di filtraggio dei dati esterni

Se intendi analizzare ed elaborare i dati nel tuo data lake utilizzando motori di query di terze parti, devi attivare l'opzione per consentire ai motori esterni di accedere ai dati gestiti da Lake Formation. Se non effettui l'attivazione, i motori esterni non saranno in grado di accedere ai dati nelle sedi Amazon S3 registrate con Lake Formation.

Lake Formation supporta le autorizzazioni a livello di colonna per limitare l'accesso a colonne specifiche di una tabella. Servizi di analisi integrati come Amazon Athena Amazon Redshift Spectrum e Amazon EMR recuperano i metadati delle tabelle non filtrati da. AWS Glue Data Catalog L'effettivo filtraggio delle colonne nelle risposte alle query è responsabilità del servizio integrato. È responsabilità degli amministratori di terze parti gestire correttamente le autorizzazioni per evitare l'accesso non autorizzato ai dati.

Attivare l'autorizzazione per consentire ai motori di terze parti di accedere e filtrare i dati (console)
  1. Continua nella console di Lake Formation all'indirizzo https://console.aws.amazon.com/lakeformation/. Assicurati di aver effettuato l'accesso come principale con l'autorizzazione IAM sull'operazione dell'PutDataLakeSettingsAPI Lake Formation. L'utente amministratore IAM in cui hai creato Iscriviti per un Account AWS dispone di questa autorizzazione.

  2. Nel riquadro di navigazione, in Amministrazione, scegli Impostazioni di integrazione delle applicazioni.

  3. Nella pagina delle impostazioni di integrazione dell'applicazione, procedi come segue:

    1. Seleziona la casella Consenti ai motori esterni di filtrare i dati nelle località Amazon S3 registrate con Lake Formation.

    2. Inserisci i valori dei tag di sessione definiti per i motori di terze parti.

    3. Per gli ID AWS account, inserisci gli ID account da cui i motori di terze parti possono accedere alle località registrate con Lake Formation. Premi Invio dopo ogni ID account.

    4. Selezionare Salva.

Per consentire ai motori esterni di accedere ai dati senza la convalida dei tag di sessione, vedi Integrazione delle applicazioni per l'accesso completo alla tabella

(Facoltativo) Concedi l'accesso alla chiave di crittografia Data Catalog

Se AWS Glue Data Catalog è crittografato, concedi le autorizzazioni AWS Identity and Access Management (IAM) sulla AWS KMS chiave a tutti i responsabili che devono concedere le autorizzazioni di Lake Formation sui database e sulle tabelle del Data Catalog.

Per ulteriori informazioni, consulta la Guida per gli sviluppatori di AWS Key Management Service .

(Facoltativo) Crea un ruolo IAM per i flussi di lavoro

Con AWS Lake Formation, puoi importare i tuoi dati utilizzando flussi di lavoro eseguiti dai AWS Glue crawler. Un flusso di lavoro definisce l'origine dei dati e la pianificazione per l'importazione dei dati nel data lake. Puoi definire facilmente i flussi di lavoro utilizzando i blueprint o i modelli forniti da Lake Formation.

Quando crei un flusso di lavoro, devi assegnargli un ruolo AWS Identity and Access Management (IAM) che conceda a Lake Formation le autorizzazioni necessarie per importare i dati.

La procedura seguente presuppone la familiarità con IAM.

Per creare un ruolo IAM per i flussi di lavoro
  1. Apri la console IAM all'indirizzo https://console.aws.amazon.com/iam e accedi come utente amministratore che hai creato Crea un utente con accesso amministrativo o come utente con la policy AdministratorAccess AWS gestita.

  2. Nel pannello di navigazione, scegli Ruoli, quindi Crea ruolo.

  3. Nella pagina Crea ruolo, scegli AWS service, quindi scegli Glue. Seleziona Successivo.

  4. Nella pagina Aggiungi autorizzazioni, cerca la politica AWSGlueServiceRolegestita e seleziona la casella di controllo accanto al nome della politica nell'elenco. Quindi completa la procedura guidata di creazione del ruolo, assegnando un nome al ruolo. LFWorkflowRole Per finire, scegli Crea ruolo.

  5. Torna alla pagina Ruoli, cerca LFflowRole e scegli il nome del ruolo.

  6. Nella pagina di riepilogo del ruolo, nella scheda Autorizzazioni, scegli Crea policy in linea. Nella schermata Crea policy, vai alla scheda JSON e aggiungi la seguente policy in linea. Un nome suggerito per la policy è. LakeFormationWorkflow

    Importante

    Nella seguente politica, sostituiscila <account-id>con un Account AWS numero valido.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "lakeformation:GetDataAccess", "lakeformation:GrantPermissions" ], "Resource": "*" }, { "Effect": "Allow", "Action": ["iam:PassRole"], "Resource": [ "arn:aws:iam::<account-id>:role/LakeFormationWorkflowRole" ] } ] }

    Di seguito sono riportate brevi descrizioni delle autorizzazioni contenute in questa politica:

    • lakeformation:GetDataAccessconsente ai lavori creati dal flusso di lavoro di scrivere nella posizione di destinazione.

    • lakeformation:GrantPermissionsconsente al flusso di lavoro di concedere l'SELECTautorizzazione sulle tabelle di destinazione.

    • iam:PassRoleconsente al servizio di assumere il ruolo di LakeFormationWorkflowRole creare crawler e job (istanze di flussi di lavoro) e di assegnare il ruolo ai crawler e ai job creati.

  7. Verifica che al ruolo siano associate due policy. LakeFormationWorkflowRole

  8. Se stai importando dati che si trovano all'esterno della posizione del data lake, aggiungi una policy in linea che conceda le autorizzazioni per leggere i dati di origine.