Considerazioni e limitazioni per l'interrogazione dei dati registrati con Lake Formation - Amazon Athena

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

Considerazioni e limitazioni per l'interrogazione dei dati registrati con Lake Formation

Considera quanto segue quando utilizzi Athena per eseguire query sui dati registrati in Lake Formation. Per ulteriori informazioni, consulta Problemi noti per AWS Lake Formation nella AWS Lake Formation Guida per gli sviluppatori.

Metadati delle colonne visibili agli utenti non autorizzati in alcune circostanze con Avro e custom SerDe

L'autorizzazione a livello di colonna di Lake Formation impedisce agli utenti di accedere ai dati nelle colonne per le quali l'utente non dispone delle autorizzazioni Lake Formation. Tuttavia, in alcune situazioni, gli utenti sono in grado di accedere ai metadati che descrivono tutte le colonne della tabella, incluse le colonne per le quali non dispongono delle autorizzazioni per i dati.

Ciò si verifica quando i metadati delle colonne vengono archiviati nelle proprietà della tabella per le tabelle che utilizzano il formato di archiviazione Apache Avro o utilizzano un Serializer/Deserializer personalizzato (SerDe) in cui lo schema della tabella è definito nelle proprietà della tabella insieme alla definizione. SerDe Quando utilizzi Athena con Lake Formation, consigliamo di esaminare i contenuti delle proprietà della tabella che registri con Lake Formation e, se possibile, limitare le informazioni archiviate nelle proprietà della tabella per evitare che i metadati sensibili siano visibili agli utenti.

Comprendi Lake Formation e i panorami

Per i dati registrati con Lake Formation, un utente Athena può creare una VIEW solo se dispone delle autorizzazioni Lake Formation per le tabelle, le colonne e le posizioni dei dati di origine Amazon S3 su cui si basa VIEW. Dopo aver creato una VIEW in Athena, le autorizzazioni Lake Formation possono essere applicate alla VIEW. Le autorizzazioni a livello di colonna non sono disponibili per VIEW. Gli utenti che dispongono delle autorizzazioni Lake Formation per una VIEW ma non dispongono delle autorizzazioni per la tabella e le colonne su cui era basata la visualizzazione non sono in grado di utilizzare la VIEW per eseguire query sui dati. Tuttavia, gli utenti con questa combinazione di autorizzazioni sono in grado di utilizzare istruzioni come DESCRIBE VIEW, SHOW CREATE VIEW, e SHOW COLUMNS per visualizzare i metadati VIEW. Per questo motivo, assicurati di allineare le autorizzazioni Lake Formation per ogni VIEW con le autorizzazioni della tabella sottostante. I filtri delle celle definiti su una tabella non si applicano a VIEW per tale tabella. I nomi dei link alle risorse devono avere lo stesso nome della risorsa nell'account di origine. Esistono limitazioni aggiuntive quando si lavora con le viste in una configurazione tra più account. Per ulteriori informazioni su come importare le autorizzazioni per le visualizzazioni condivise tra account, consulta Configurare l'accesso al Data Catalog tra più account.

Supporto Iceberg DDL

Athena attualmente non supporta DDL le operazioni sui tavoli Iceberg la cui ubicazione è registrata presso Lake Formation. Il tentativo di eseguire una DDL query su una di queste tabelle Iceberg può restituire un errore di accesso negato ad Amazon S3 o fallire con un timeout della query. DDLle operazioni sulle tabelle Iceberg richiedono che l'utente disponga dell'accesso diretto di Amazon S3 alla posizione della tabella Iceberg.

Controllo granulare degli accessi di Lake Formation e gruppi di lavoro Athena

Gli utenti dello stesso gruppo di lavoro Athena possono visualizzare i dati che il controllo granulare degli accessi di Lake Formation ha configurato come accessibili da parte del gruppo di lavoro. Per ulteriori informazioni sull'utilizzo del controllo granulare degli accessi in Lake Formation, consulta Gestire il controllo granulare degli accessi utilizzando AWS Lake Formation nella AWS Blog sui Big Data.

Posizione dei risultati delle query Athena in Amazon S3 non registrate con Lake Formation

Le posizioni dei risultati della query in Amazon S3 per Athena non possono essere registrate con Lake Formation. Le autorizzazioni Lake Formation non limitano l'accesso a queste posizioni. A meno che non si limiti l'accesso, gli utenti Athena possono accedere ai file dei risultati delle query e ai metadati quando non dispongono delle autorizzazioni Lake Formation per i dati. Per evitare questo problema, è consigliabile utilizzare i gruppi di lavoro per specificare la posizione dei risultati delle query e allineare l'appartenenza al gruppo di lavoro alle autorizzazioni Lake Formation. È quindi possibile utilizzare le politiche di IAM autorizzazione per limitare l'accesso alle posizioni dei risultati delle query. Per ulteriori informazioni sui risultati delle query, consulta Utilizzare i risultati delle query e le query recenti.

Utilizzo dei gruppi di lavoro Athena per limitare l'accesso alla cronologia delle query

La cronologia delle query Athena espone un elenco di query salvate e stringhe di query complete. A meno che non si utilizzino gruppi di lavoro per separare l'accesso alle cronologie delle query, gli utenti di Athena che non sono autorizzati a eseguire query sui dati in Lake Formation possono visualizzare le stringhe di query eseguite su tali dati, inclusi i nomi delle colonne, i criteri di selezione ecc. È consigliabile utilizzare i gruppi di lavoro per separare le cronologie delle query e allineare l'appartenenza al gruppo di lavoro Athena alle autorizzazioni Lake Formation per limitare gli accessi. Per ulteriori informazioni, consulta Usa i gruppi di lavoro per controllare l'accesso alle query e i costi.

Query CSE _ tabelle KMS crittografate registrate con Lake Formation

Le tabelle Open Table Format (OTF) come Apache Iceberg che presentano le seguenti caratteristiche non possono essere interrogate con Athena:

  • Le tabelle si basano sulle posizioni dei dati di Amazon S3 registrate con Lake Formation.

  • Gli oggetti in Amazon S3 sono crittografati utilizzando la crittografia lato client (). CSE

  • La crittografia utilizza AWS KMS chiavi gestite dal cliente ()CSE_KMS.

Per interrogare non OTF tabelle (che sono crittografate con una CSE_KMS chiave), aggiungi il seguente blocco alla politica di AWS KMS chiave che usi per la CSE crittografia. <KMS_KEY_ARN> è la ARN delle AWS KMS chiave che crittografa i dati. <IAM-ROLE-ARN> è il IAM ruolo che registra la posizione ARN di Amazon S3 in Lake Formation.

{ "Sid": "Allow use of the key", "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": "kms:Decrypt", "Resource": "<KMS-KEY-ARN>", "Condition": { "ArnLike": { "aws:PrincipalArn": "<IAM-ROLE-ARN>" } } }

Le posizioni dei dati partizionati registrate con Lake Formation devono essere nelle sottodirectory della tabella

Le tabelle partizionate registrate con Lake Formation devono avere dati partizionati nelle directory che sono sottodirectory della tabella in Amazon S3. Ad esempio, una tabella con la posizione s3://amzn-s3-demo-bucket/mytable e le partizioni s3://amzn-s3-demo-bucket/mytable/dt=2019-07-11, s3://amzn-s3-demo-bucket/mytable/dt=2019-07-12 e così via può essere registrata con Lake Formation ed è possibile eseguire query utilizzando Athena. D'altra parte, una tabella con la posizione s3://amzn-s3-demo-bucket/mytable e le partizioni situate in s3://amzn-s3-demo-bucket/dt=2019-07-11, s3://amzn-s3-demo-bucket/dt=2019-07-12 e così via, non può essere registrata con Lake Formation. Poiché tali partizioni non sono sottodirectory di s3://amzn-s3-demo-bucket/mytable, non possono essere lette da Athena.

Crea tabella poiché le query select (CTAS) richiedono le autorizzazioni di scrittura di Amazon S3

Create Table As Statements (CTAS) richiede l'accesso in scrittura alla posizione delle tabelle in Amazon S3. Per eseguire CTAS query sui dati registrati con Lake Formation, gli utenti di Athena devono IAM disporre delle autorizzazioni per scrivere sulla tabella delle posizioni Amazon S3 oltre alle autorizzazioni di Lake Formation appropriate per leggere le posizioni dei dati. Per ulteriori informazioni, consulta Crea una tabella dai risultati della query (CTAS).

L'DESCRIBEautorizzazione è richiesta nel database predefinito

L'DESCRIBEautorizzazione Lake Formation è richiesta nel default database in modo che Lake Formation possa visualizzarlo. L'esempio seguente AWS CLI comando concede l'DESCRIBEautorizzazione sul default database all'utente datalake_user1 in AWS conto. 111122223333

aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "DESCRIBE" --resource '{ "Database": {"Name":"default"}}

Per ulteriori informazioni, vedere DESCRIBEin AWS Lake Formation Guida per gli sviluppatori.