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à.
Usare le viste AWS Glue Data Catalog
Questa caratteristica è in versione di anteprima ed è soggetta a modifica. Per ulteriori informazioni, consulta la sezione Beta e anteprime nel documento Termini del servizio AWS |
Usa le AWS Glue Data Catalog viste quando desideri un'unica vista comune su Servizi AWS Amazon Athena e Amazon Redshift. Nelle viste di Catalogo dati, le autorizzazioni di accesso sono definite dall'utente che ha creato la vista anziché dall'utente che la interroga. Questo metodo di concessione delle autorizzazioni è chiamato semantica del definitore.
Di seguito sono riportati casi d'uso che mostrano come è possibile utilizzare le viste di Catalogo dati.
-
Maggiore controllo degli accessi: crea una vista che limita l'accesso ai dati in base al livello di autorizzazioni richiesto dall'utente. Ad esempio, è possibile utilizzare le viste di Catalogo dati per impedire ai dipendenti che non lavorano nel reparto delle risorse umane di visualizzare informazioni di identificazione personale.
-
Completezza dei record garantita: applicando determinati filtri alla vista di Catalogo dati, puoi assicurarti che i record di dati in una vista di Catalogo dati siano sempre completi.
-
Sicurezza avanzata: nelle viste di Catalogo dati, la definizione della query che crea la vista deve essere intatta per assicurare la corretta creazione della vista. Ciò rende le visualizzazioni di Catalogo dati meno suscettibili ai comandi SQL da parte di soggetti malintenzionati.
-
Accesso alle tabelle sottostanti interdetto: la semantica del definitore consente agli utenti di accedere a una vista senza rendere loro disponibile la tabella sottostante. Solo l'utente che definisce la vista richiede l'accesso alle tabelle.
Le definizioni delle viste di Catalogo dati sono archiviate in AWS Glue Data Catalog. Ciò significa che è possibile utilizzare AWS Lake Formation per concedere l'accesso tramite concessioni di risorse, concessioni di colonne o controlli di accesso basati su tag. Per ulteriori informazioni sulla concessione e la revoca dell'accesso a Lake Formation, consulta la pagina Granting and revoking permissions on Data Catalog resources nella Guida per gli sviluppatori di AWS Lake Formation .
Autorizzazioni
Le viste di Catalogo Dati richiedono tre ruoli: Lake Formation Admin
, Definer
e Invoker
.
-
Lake Formation Admin
: ha accesso alla configurazione di tutte le autorizzazioni di Lake Formation. -
Definer
: crea la vista di Catalogo Dati. Il ruoloDefiner
deve disporre di autorizzazioniSELECT
complete per tutte le tabelle sottostanti a cui la definizione della vista fa riferimento. -
Invoker
: può interrogare la vista di Catalogo Dati o controllarne i metadati. Per mostrare l'invocatore di una query, puoi usare la funzione DML.invoker_principal()
Per ulteriori informazioni, consulta invoker_principal ().
Le relazioni di fiducia del Definer
ruolo devono consentire l'sts:AssumeRole
azione dei responsabili del servizio AWS Glue e di Lake Formation, come nell'esempio seguente.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Service": [ "glue.amazonaws.com", "lakeformation.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] }
Sono inoltre necessarie le autorizzazioni IAM per l'accesso ad Athena. Per ulteriori informazioni, consulta AWS politiche gestite per Amazon Athena.
Limitazioni
-
Le viste di Catalogo Dati non possono fare riferimento ad altre viste.
-
È possibile fare riferimento a un massimo di 10 tabelle nella definizione della vista.
-
Le tabelle sottostanti devono essere registrate con Lake Formation.
-
Il principale
DEFINER
può essere solo un ruolo IAM. -
Il ruolo
DEFINER
deve disporre di autorizzazioniSELECT
(concedibili) complete per tutte le tabelle sottostanti. -
Le viste di Catalogo Dati di
UNPROTECTED
non sono supportate. -
Le funzioni definite dall'utente (UFD) non sono supportate nella definizione della vista.
-
Le origini dati federate Athena non possono essere utilizzate nelle viste di Catalogo Dati.
-
Le viste di Catalogo Dati non sono supportate per i metastore Hive esterni.
-
Athena visualizza un messaggio di errore quando rileva viste non aggiornate. Una vista obsoleta viene segnalata quando si verifica una delle seguenti operazioni:
-
La vista fa riferimento a tabelle o database che non esistono.
-
Una modifica dello schema o dei metadati viene effettuata in una tabella di riferimento.
-
Una tabella di riferimento viene eliminata e ricreata con uno schema o una configurazione diversa.
-
Creazione di una vista di Catalogo Dati
La sintassi di esempio seguente mostra come un utente del ruolo Definer
crea la vista di Catalogo Dati di orders_by_date
. L'esempio presuppone che il ruolo Definer
disponga delle autorizzazioni SELECT
complete sulla tabella orders
del database default
.
CREATE PROTECTED MULTI DIALECT VIEW orders_by_date SECURITY DEFINER AS SELECT orderdate, sum(totalprice) AS price FROM orders WHERE order_city = 'SEATTLE' GROUP BY orderdate
Interrogazione di una vista di Catalogo Dati
Dopo la creazione della vista, l'Admin
di Lake Formation
può concedere le autorizzazioni SELECT
per la vista di Catalogo Dati ai principali Invoker
. I principali Invoker
possono quindi interrogare la vista senza avere accesso alle tabelle di base sottostanti a cui la vista fa riferimento. Di seguito è riportato un esempio di query Invoker
.
SELECT * from orders_by_date where price > 5000
Aggiornamento di una vista di Catalogo Dati
L'Lake Formation Admin
oppure il Definer
possono utilizzare la sintassi ALTER VIEW
UPDATE DIALECT
per aggiornare la definizione della vista. L'esempio seguente modifica la definizione della vista per selezionare le colonne dalla tabella returns
anziché dalla tabella orders
.
ALTER VIEW orders_by_date UPDATE DIALECT AS SELECT return_date, sum(totalprice) AS price FROM returns WHERE order_city = 'SEATTLE' GROUP BY orderdate
Per ulteriori informazioni sulla sintassi per la creazione e la gestione delle viste di Catalogo Dati, consulta la pagina Sintassi delle viste di Catalogo Dati di Glue.