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à.
Controllo sottostante dell'accesso ai dati
Quando un AWS servizio integrato richiede l'accesso ai dati in una posizione Amazon S3 con accesso controllato da, Lake AWS Lake Formation Formation fornisce credenziali temporanee per accedere ai dati.
Per consentire a Lake Formation di controllare l'accesso ai dati sottostanti in una sede Amazon S3, devi registrare tale posizione con Lake Formation.
Dopo aver registrato una sede Amazon S3, puoi iniziare a concedere le seguenti autorizzazioni Lake Formation:
-
Autorizzazioni di accesso ai dati (
SELECT
INSERT
,) eDELETE)
sulle tabelle di Data Catalog che puntano a quella posizione. -
Autorizzazioni per l'ubicazione dei dati in quella posizione.
Le autorizzazioni di localizzazione dei dati di Lake Formation controllano la capacità di creare risorse Data Catalog che puntano a particolari posizioni Amazon S3. Le autorizzazioni di localizzazione dei dati forniscono un ulteriore livello di sicurezza alle posizioni all'interno del data lake. Quando concedi l'ALTER
autorizzazione CREATE_TABLE
o l'autorizzazione a un'entità principale, concedi anche le autorizzazioni per la localizzazione dei dati per limitare le posizioni per le quali l'ente principale può creare o modificare tabelle di metadati.
Le sedi Amazon S3 sono bucket o prefissi all'interno di un bucket, ma non singoli oggetti Amazon S3.
Puoi concedere le autorizzazioni per la localizzazione dei dati a un principale utilizzando la console Lake Formation, l'API o il AWS CLI. La forma generale di una sovvenzione è la seguente:
grant DATA_LOCATION_ACCESS to
principal
onS3 location
[with grant option]
Se lo includiwith grant option
, il beneficiario può concedere le autorizzazioni ad altri mandanti.
Ricorda che le autorizzazioni di Lake Formation funzionano sempre in combinazione con le autorizzazioni AWS Identity and Access Management (IAM) per un controllo granulare degli accessi. Per le autorizzazioni di lettura/scrittura sui dati Amazon S3 sottostanti, le autorizzazioni IAM vengono concesse come segue:
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 ai servizi integrati. AWS Un ruolo tipico potrebbe avere la seguente politica allegata, in cui la posizione registrata è il bucket. awsexamplebucket
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:DeleteObject" ], "Resource": [ "arn:aws:s3:::awsexamplebucket/*" ] }, { "Effect": "Allow", "Action": [ "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::awsexamplebucket" ] } ] }
Lake Formation offre un ruolo collegato al servizio che puoi utilizzare durante la registrazione per creare automaticamente politiche come questa. Per ulteriori informazioni, consulta Utilizzo di ruoli collegati ai servizi per Lake Formation.
Pertanto, la registrazione di una sede Amazon S3 concede le autorizzazioni s3:
IAM richieste su quella posizione, dove le autorizzazioni sono specificate dal ruolo utilizzato per registrare la posizione.
Importante
Evita di registrare un bucket Amazon S3 con Requester pay abilitato. Per i bucket registrati con Lake Formation, il ruolo utilizzato per registrare il bucket viene sempre visualizzato come richiedente. Se al bucket si accede da un altro AWS account, al proprietario del bucket viene addebitato l'accesso ai dati se il ruolo appartiene allo stesso account del proprietario del bucket.
Per l'accesso in lettura/scrittura ai dati sottostanti, oltre alle autorizzazioni di Lake Formation, i principali necessitano anche della seguente autorizzazione IAM:
lakeformation:GetDataAccess
Con questa autorizzazione, Lake Formation concede la richiesta di credenziali temporanee per accedere ai dati.
Nota
Amazon Athena richiede che l'utente disponga dell'lakeformation:GetDataAccess
autorizzazione. Altri servizi integrati richiedono che il ruolo di esecuzione sottostante disponga dell'lakeformation:GetDataAccess
autorizzazione.
Questa autorizzazione è inclusa nelle politiche suggerite inRiferimento ai personaggi e alle IAM autorizzazioni di Lake Formation.
Riassumendo, per consentire ai dirigenti di Lake Formation di leggere e scrivere i dati sottostanti con accesso controllato dai permessi di Lake Formation:
-
Registra le sedi Amazon S3 che contengono i dati con Lake Formation.
-
I responsabili che creano tabelle Data Catalog che puntano alle posizioni dei dati sottostanti devono disporre delle autorizzazioni per la localizzazione dei dati.
-
I responsabili che leggono e scrivono i dati sottostanti devono disporre delle autorizzazioni di accesso ai dati di Lake Formation sulle tabelle del Data Catalog che puntano alle posizioni dei dati sottostanti.
-
I responsabili che leggono e scrivono i dati sottostanti devono disporre dell'autorizzazione
lakeformation:GetDataAccess
IAM quando la posizione dei dati sottostanti è registrata con Lake Formation.
Nota
Il modello di autorizzazioni Lake Formation non impedisce l'accesso alle sedi Amazon S3 tramite l'API o la console di Amazon S3 se hai accesso ad esse tramite policy IAM o Amazon S3. Puoi collegare le policy IAM ai principali per bloccare questo accesso.
Ulteriori informazioni sulle autorizzazioni di localizzazione dei dati
Le autorizzazioni di localizzazione dei dati regolano il risultato delle operazioni di creazione e aggiornamento su database e tabelle Data Catalog. Le regole sono le seguenti:
-
Un principale deve disporre di autorizzazioni esplicite o implicite per la localizzazione dei dati su una posizione Amazon S3 per creare o aggiornare un database o una tabella che specifichi tale posizione.
-
L'autorizzazione esplicita
DATA_LOCATION_ACCESS
viene concessa utilizzando la console, l'API o. AWS CLI -
Le autorizzazioni implicite vengono concesse quando un database ha una proprietà location che punta a una posizione registrata, il principale dispone dell'
CREATE_TABLE
autorizzazione sul database e il principale tenta di creare una tabella in quella posizione o in una posizione secondaria. -
Se a un responsabile vengono concesse le autorizzazioni per la localizzazione dei dati su una posizione, il responsabile dispone delle autorizzazioni per la localizzazione dei dati su tutte le sedi secondarie.
-
Un responsabile non necessita delle autorizzazioni di localizzazione dei dati per eseguire operazioni di lettura/scrittura sui dati sottostanti. È sufficiente disporre delle
SELECT
o delle autorizzazioni di accesso aiINSERT
dati. Le autorizzazioni per la localizzazione dei dati si applicano solo alla creazione di risorse del Catalogo Dati che puntano alla posizione.
Considerate lo scenario illustrato nel diagramma seguente.
In questo diagramma:
-
I bucket
Products
Amazon S3Customer Service
sono registrati presso Lake Formation.Finance
-
Database A
non ha una proprietà di posizione eDatabase B
ha una proprietà di posizione che punta alCustomer Service
bucket. -
L'utente
datalake_user
haCREATE_TABLE
su entrambi i database. -
All'utente sono
datalake_user
state concesse le autorizzazioni per la localizzazione dei dati solo nelProducts
bucket.
Di seguito sono riportati i risultati ottenuti quando l'utente datalake_user
tenta di creare una tabella di catalogo in un particolare database in una posizione particolare.
Posizione in cui datalake_user tenta di creare una tabella | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Database e posizione | Ha successo o fallisce | Motivo | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Database A in Finance/Sales |
Fallisce | Nessuna autorizzazione per la localizzazione dei dati | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Database A in Products |
Ha successo | Dispone dell'autorizzazione alla localizzazione dei dati | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Database A in HR/Plans |
Ha successo | La posizione non è registrata | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Database B in Customer Service/Incidents |
Ha successo | Il database ha la proprietà di localizzazione in Customer Service |
Per ulteriori informazioni, consulta gli argomenti seguenti: