Riferimento alle autorizzazioni 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à.

Riferimento alle autorizzazioni di Lake Formation

Per eseguire AWS Lake Formation le operazioni, i mandanti necessitano sia delle autorizzazioni di Lake Formation che delle autorizzazioni AWS Identity and Access Management (IAM). In genere concedi le autorizzazioni IAM utilizzando politiche di controllo degli accessi granulari, come descritto in. Panoramica delle autorizzazioni di Lake Formation Puoi concedere le autorizzazioni di Lake Formation utilizzando la console, l'API o AWS Command Line Interface (AWS CLI).

Per informazioni su come concedere o revocare le autorizzazioni di Lake Formation, vedere e. Concessione delle autorizzazioni per le risorse del Data Catalog Concessione delle autorizzazioni per la localizzazione dei dati

Nota

Gli esempi in questa sezione mostrano come concedere le autorizzazioni ai responsabili dello stesso account. AWS Per esempi di sovvenzioni su più account, vedere. Condivisione dei dati tra account in Lake Formation

Autorizzazioni Lake Formation per tipo di risorsa

Di seguito sono riportate le autorizzazioni valide di Lake Formation disponibili per ogni tipo di risorsa:

Risorsa Autorizzazione
Database ALL (Super)
ALTER
CREATE_TABLE
DESCRIBE
DROP
Table ALL (Super)
ALTER
DELETE
DESCRIBE
DROP
INSERT
SELECT
View ALL (Super)
SELECT
DESCRIBE
DROP
Data Catalog CREATE_DATABASE
Amazon S3 location DATA_LOCATION_ACCESS
LF-Tags DROP
ALTER
LF-Tag values ASSOCIATE
DESCRIBE
GrantWithLFTagExpression
LF-Tag policy - Database ALL (Super)
ALTER
CREATE_TABLE
DESCRIBE
DROP
LF-Tag policy - Table ALL (Super)
ALTER
DESCRIBE
DELETE
DROP
INSERT
SELECT
Resource link - Database or Table DESCRIBE
DROP
Table with data filters DESCRIBE
DROP
SELECT
Table with column filter SELECT

Comandi di concessione e AWS CLI revoca di Lake Formation

Ogni descrizione dell'autorizzazione in questa sezione include esempi di concessione dell'autorizzazione tramite un comando. AWS CLI Di seguito sono riportate le sinossi grant-permissions e revoke-permissions AWS CLI i comandi del Lake Formation.

grant-permissions [--catalog-id <value>] --principal <value> --resource <value> --permissions <value> [--permissions-with-grant-option <value>] [--cli-input-json <value>] [--generate-cli-skeleton <value>]
revoke-permissions [--catalog-id <value>] --principal <value> --resource <value> --permissions <value> [--permissions-with-grant-option <value>] [--cli-input-json <value>] [--generate-cli-skeleton <value>]

Per una descrizione dettagliata di questi comandi, vedete grant-permissions e revoke-permissions nel Command Reference.AWS CLI Questa sezione fornisce informazioni aggiuntive sull'opzione. --principal

Il valore dell'--principalopzione è uno dei seguenti:

  • Amazon Resource Name (ARN) per un utente o un AWS Identity and Access Management ruolo (IAM)

  • ARN per un utente o un gruppo che esegue l'autenticazione tramite un provider SAML, come Microsoft Active Directory Federation Service (ADFS)

  • ARN per un QuickSight utente o un gruppo Amazon

  • Per le autorizzazioni su più account, un ID AWS account, un ID dell'organizzazione o un ID di unità organizzativa

Di seguito sono riportati la sintassi e gli esempi per tutti i tipi. --principal

Principal è un utente IAM

Sintassi:

--principal DataLakePrincipalIdentifier=arn:aws:iam::<account-id>:user/<user-name>

Esempio:

--principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1
Principal è un ruolo IAM

Sintassi:

--principal DataLakePrincipalIdentifier=arn:aws:iam::<account-id>:role/<role-name>

Esempio:

--principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:role/workflowrole
Principal è un utente che si autentica tramite un provider SAML

Sintassi:

--principal DataLakePrincipalIdentifier=arn:aws:iam::<account-id>:saml-provider/<SAMLproviderName>:user/<user-name>

Esempi:

--principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:saml-provider/idp1:user/datalake_user1
--principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:saml-provider/AthenaLakeFormationOkta:user/athena-user@example.com
Principal è un gruppo che si autentica tramite un provider SAML

Sintassi:

--principal DataLakePrincipalIdentifier=arn:aws:iam::<account-id>:saml-provider/<SAMLproviderName>:group/<group-name>

Esempi:

--principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:saml-provider/idp1:group/data-scientists
--principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:saml-provider/AthenaLakeFormationOkta:group/my-group
Principal è un utente di Amazon QuickSight Enterprise Edition

Sintassi:

--principal DataLakePrincipalIdentifier=arn:aws:quicksight:<region>:<account-id>:user/<namespace>/<user-name>
Nota

Perché<namespace>, devi specificaredefault.

Esempio:

--principal DataLakePrincipalIdentifier=arn:aws:quicksight:us-east-1:111122223333:user/default/bi_user1
Principal è un gruppo Amazon QuickSight Enterprise Edition

Sintassi:

--principal DataLakePrincipalIdentifier=arn:aws:quicksight:<region>:<account-id>:group/<namespace>/<group-name>
Nota

Perché<namespace>, devi specificaredefault.

Esempio:

--principal DataLakePrincipalIdentifier=arn:aws:quicksight:us-east-1:111122223333:group/default/data_scientists
Il principale è un AWS account

Sintassi:

--principal DataLakePrincipalIdentifier=<account-id>

Esempio:

--principal DataLakePrincipalIdentifier=111122223333
Il preside è un'organizzazione

Sintassi:

--principal DataLakePrincipalIdentifier=arn:aws:organizations::<account-id>:organization/<organization-id>

Esempio:

--principal DataLakePrincipalIdentifier=arn:aws:organizations::111122223333:organization/o-abcdefghijkl
Il preside è un'unità organizzativa

Sintassi:

--principal DataLakePrincipalIdentifier=arn:aws:organizations::<account-id>:ou/<organization-id>/<organizational-unit-id>

Esempio:

--principal DataLakePrincipalIdentifier=arn:aws:organizations::111122223333:ou/o-abcdefghijkl/ou-ab00-cdefghij
Il preside è un utente o un gruppo di identità di IAM Identity Center

Esempio: utente

--principal DataLakePrincipalIdentifier=arn:aws:identitystore:::user/<UserID>

Esempio: Gruppo:

--principal DataLakePrincipalIdentifier=arn:aws:identitystore:::group/<GroupID>
Principal è un gruppo IAM - IAMAllowedPrincipals

Lake Formation imposta le Super autorizzazioni su tutti i database e le tabelle del Data Catalog a un gruppo chiamato per IAMAllowedPrincipals impostazione predefinita. Se questa autorizzazione di gruppo esiste su un database o una tabella, tutti i principali del tuo account avranno accesso alla risorsa tramite le politiche principali IAM per AWS Glue. Fornisce la compatibilità con le versioni precedenti quando inizi a utilizzare le autorizzazioni di Lake Formation per proteggere le risorse del Data Catalog per cui in precedenza erano protette dalle politiche IAM. AWS Glue

Quando utilizzi Lake Formation per gestire le autorizzazioni per le tue risorse Data Catalog, devi prima revocare l'IAMAllowedPrincipalsautorizzazione sulle risorse o attivare i principali e le risorse per la modalità di accesso ibrido affinché le autorizzazioni di Lake Formation funzionino.

Esempio:

--principal DataLakePrincipalIdentifier=IAM_Allowed_Principals
Principal è un gruppo IAM - ALLIAMPrincipals

Quando concedi le autorizzazioni per il ALLIAMPrincipals gruppo su una risorsa Data Catalog, ogni principale dell'account ottiene l'accesso alla risorsa Data Catalog utilizzando le autorizzazioni Lake Formation e le autorizzazioni IAM.

Esempio:

--principal DataLakePrincipalIdentifier=123456789012:IAMPrincipals

Autorizzazioni Lake Formation

Questa sezione contiene i permessi disponibili di Lake Formation che puoi concedere ai presidi.

ALTER

Autorizzazione Concesso su questa risorsa Inoltre, il beneficiario ha bisogno
ALTER DATABASE glue:UpdateDatabase
ALTER TABLE glue:UpdateTable
ALTER LF-Tag lakeformation:UpdateLFTag

Un principale con questa autorizzazione può modificare i metadati di un database o di una tabella nel Catalogo dati. Per le tabelle, è possibile modificare lo schema delle colonne e aggiungere parametri di colonna. Non è possibile modificare le colonne nei dati sottostanti a cui fa riferimento una tabella di metadati.

Se la proprietà da modificare è una posizione registrata di Amazon Simple Storage Service (Amazon S3), il principale deve disporre delle autorizzazioni per la localizzazione dei dati nella nuova posizione.

L'esempio seguente concede l'ALTERautorizzazione all'utente datalake_user1 sul database retail nell'account 1111-2222-3333. AWS

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

L'esempio seguente concede ALTER a un utente l'datalake_user1accesso alla tabella del database. inventory retail

aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "ALTER" --resource '{ "Table": {"DatabaseName":"retail", "Name":"inventory"}}'

CREATE_DATABASE

Autorizzazione Concesso su questa risorsa Inoltre, il beneficiario ha bisogno
CREATE_DATABASE Catalogo dati glue:CreateDatabase

Un responsabile con questa autorizzazione può creare un database di metadati o un collegamento a una risorsa nel Catalogo dati. Il principale può anche creare tabelle nel database.

L'esempio seguente concede CREATE_DATABASE a un utente datalake_user1 nell' AWS account 1111-2222-3333.

aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "CREATE_DATABASE" --resource '{ "Catalog": {}}'

Quando un principale crea un database nel Data Catalog, non viene concessa alcuna autorizzazione per i dati sottostanti. Vengono concesse le seguenti autorizzazioni aggiuntive per i metadati (oltre alla possibilità di concedere tali autorizzazioni ad altri):

  • CREATE_TABLEnel database

  • Database ALTER

  • Database DROP

Quando crea un database, il principale può facoltativamente specificare una posizione Amazon S3. A seconda che il principale disponga delle autorizzazioni per la localizzazione dei dati, l'CREATE_DATABASEautorizzazione potrebbe non essere sufficiente per creare database in tutti i casi. È importante tenere a mente i tre casi seguenti.

Crea un caso d'uso del database Autorizzazioni necessarie
La proprietà location non è specificata. CREATE_DATABASEè sufficiente.
La proprietà location è specificata e la posizione non è gestita da Lake Formation (non è registrata). CREATE_DATABASEè sufficiente.
La proprietà location è specificata e la posizione è gestita da Lake Formation (è registrata). CREATE_DATABASEè obbligatorio più le autorizzazioni di localizzazione dei dati nella posizione specificata.

CREATE_TABLE

Autorizzazione Concesso su questa risorsa Inoltre, il beneficiario ha bisogno
CREATE_TABLE DATABASE glue:CreateTable

Un principale con questa autorizzazione può creare una tabella di metadati o un collegamento a una risorsa nel Catalogo dati all'interno del database specificato.

L'esempio seguente concede all'utente l'datalake_user1autorizzazione a creare tabelle nel retail database nell' AWS account 1111-2222-3333.

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

Quando un principale crea una tabella nel Data Catalog, tutti i permessi di Lake Formation sulla tabella vengono concessi al principale, con la possibilità di concedere tali autorizzazioni ad altri.

Sovvenzioni tra account

Se un account del proprietario del database concede CREATE_TABLE a un account destinatario e un utente dell'account destinatario crea correttamente una tabella nel database dell'account proprietario, si applicano le seguenti regole:

  • Gli amministratori dell'utente e del data lake nell'account del destinatario dispongono di tutte le autorizzazioni di Lake Formation sulla tabella. Possono concedere le autorizzazioni sulla tabella ad altri responsabili del loro account. Non possono concedere autorizzazioni ai responsabili dell'account proprietario o di qualsiasi altro account.

  • Gli amministratori di Data Lake dell'account proprietario possono concedere le autorizzazioni relative alla tabella ad altri responsabili del proprio account.

Autorizzazioni per la localizzazione dei dati

Quando tenti di creare una tabella che punti a una posizione Amazon S3, a seconda che tu disponga delle autorizzazioni per la localizzazione dei dati, l'CREATE_TABLEautorizzazione potrebbe non essere sufficiente per creare una tabella. È importante tenere a mente i seguenti tre casi.

Crea un caso d'uso della tabella Autorizzazioni necessarie
La località specificata non è gestita da Lake Formation (non è registrata). CREATE_TABLEè sufficiente.
La posizione specificata è gestita da Lake Formation (è registrata) e il database che lo contiene non ha alcuna proprietà di location o ha una proprietà di location che non sia un prefisso Amazon S3 della posizione della tabella. CREATE_TABLEè richiesta più le autorizzazioni di localizzazione dei dati nella posizione specificata.
La posizione specificata è gestita da Lake Formation (è registrata) e il database contenente ha una proprietà location che punta a una posizione registrata ed è un prefisso Amazon S3 della posizione della tabella. CREATE_TABLEè sufficiente.

DATA_LOCATION_ACCESS

Autorizzazione Concesso su questa risorsa Inoltre, il beneficiario ha bisogno
DATA_LOCATION_ACCESS Posizione di Amazon S3. (Autorizzazioni Amazon S3 sulla posizione, che devono essere specificate dal ruolo utilizzato per registrare la posizione.)

Questa è l'unica autorizzazione per la localizzazione dei dati. Un principale con questa autorizzazione può creare un database o una tabella di metadati che punti alla posizione Amazon S3 specificata. La sede deve essere registrata. Un preside che dispone delle autorizzazioni di localizzazione dei dati su una sede dispone anche delle autorizzazioni di localizzazione sulle sedi dei figli.

L'esempio seguente concede le autorizzazioni di localizzazione dei dati s3://products/retail all'utente datalake_user1 nell'account 1111-2222-3333. AWS

aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "DATA_LOCATION_ACCESS" --resource '{ "DataLocation": {"ResourceArn":"arn:aws:s3:::products/retail"}}'

DATA_LOCATION_ACCESSnon è necessario per interrogare o aggiornare i dati sottostanti. Questa autorizzazione si applica solo alla creazione di risorse del catalogo dati.

Per ulteriori informazioni sulle autorizzazioni per la localizzazione dei dati, vedereUnderlying data access control.

DELETE

Autorizzazione Concesso su questa risorsa Inoltre, il beneficiario ha bisogno
DELETE TABLE (Non sono necessarie autorizzazioni IAM aggiuntive se la posizione è registrata.)

Un principale con questa autorizzazione può eliminare i dati sottostanti nella posizione Amazon S3 specificata nella tabella. Il responsabile può anche visualizzare la tabella sulla console Lake Formation e recuperare informazioni sulla tabella con l'AWS GlueAPI.

L'esempio seguente concede l'DELETEautorizzazione all'utente datalake_user1 sulla tabella del database inventory retail nell' AWS account 1111-2222-3333.

aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "DELETE" --resource '{ "Table": {"DatabaseName":"retail", "Name":"inventory"}}'

Questa autorizzazione si applica solo ai dati in Amazon S3 e non ai dati in altri archivi dati come Amazon Relational Database Service (Amazon RDS).

DESCRIBE

Autorizzazione Concesso su questa risorsa Inoltre, il beneficiario ha bisogno
DESCRIBE

Link alle risorse della tabella

Collegamento alle risorse del database

glue:GetTable

glue:GetDatabase

DESCRIBE DATABASE glue:GetDatabase
DESCRIBE TABLE glue:GetTable
DESCRIBE LF-Tag

glue:GetTable

glue:GetDatabase

lakeformation:GetResourceLFTags

lakeformation:ListLFTags

lakeformation:GetLFTag

lakeformation:SearchTablesByLFTags

lakeformation:SearchDatabasesByLFTags

Un principale con questa autorizzazione può visualizzare il database, la tabella o il link alla risorsa specificato. Non vengono concesse implicitamente altre autorizzazioni di Data Catalog e non vengono concesse implicitamente autorizzazioni di accesso ai dati. I database e le tabelle vengono visualizzati negli editor di query dei servizi integrati, ma non è possibile eseguire alcuna query su di essi a meno che non vengano concesse altre autorizzazioni di Lake Formation (ad esempioSELECT).

Ad esempio, un utente che ha un database può visualizzare il database e tutti i metadati del database (descrizione, posizione e così DESCRIBE via). Tuttavia, l'utente non può scoprire quali tabelle contiene il database e non può eliminare, modificare o creare tabelle nel database. Analogamente, un utente che DESCRIBE utilizza una tabella può visualizzare la tabella e i relativi metadati (descrizione, schema, posizione e così via), ma non può eliminare, modificare o eseguire query sulla tabella.

Di seguito sono riportate alcune regole aggiuntive per: DESCRIBE

  • Se un utente dispone di altre autorizzazioni Lake Formation su un database, una tabella o un collegamento a una risorsa, DESCRIBE viene concessa implicitamente.

  • Se un utente ha SELECT solo un sottoinsieme di colonne per una tabella (parzialeSELECT), l'utente è limitato a visualizzare solo quelle colonne.

  • Non puoi concedere DESCRIBE a un utente che dispone di una selezione parziale su una tabella. Al contrario, non è possibile specificare elenchi di inclusione o esclusione di colonne per le tabelle DESCRIBE consentite.

L'esempio seguente concede all'utente datalake_user1 l'DESCRIBEautorizzazione per il collegamento alle risorse della tabella nel database inventory-link retail nell' AWS account 1111-2222-3333.

aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "DESCRIBE" --resource '{ "Table": {"DatabaseName":"retail", "Name":"inventory-link"}}'

DROP

Autorizzazione Concesso su questa risorsa Inoltre, il beneficiario ha bisogno
DROP DATABASE glue:DeleteDatabase
DROP TABLE glue:DeleteTable
DROP LF-Tag lakeformation:DeleteLFTag
DROP

Collegamento alla risorsa del database

Collegamento alle risorse della tabella

glue:DeleteDatabase

glue:DeleteTable

Un principale con questa autorizzazione può eliminare un collegamento a un database, una tabella o una risorsa nel Catalogo dati. Non puoi concedere DROP su un database a un account o un'organizzazione esterni.

avvertimento

L'eliminazione di un database comporta l'eliminazione di tutte le tabelle del database.

L'esempio seguente concede l'DROPautorizzazione all'utente del database retail nell' AWS account datalake_user1 1111-2222-3333.

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

L'esempio seguente concede DROP all'utente l'accesso alla tabella del databasedatalake_user1. inventory retail

aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "DROP" --resource '{ "Table": {"DatabaseName":"retail", "Name":"inventory"}}'

L'esempio che segue concede DROP all'utente datalake_user1 della tabella un link di risorse inventory-link nel database. retail

aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "DROP" --resource '{ "Table": {"DatabaseName":"retail", "Name":"inventory-link"}}'

INSERT

Autorizzazione Concesso su questa risorsa Inoltre, il beneficiario ha bisogno
INSERT TABLE (Non sono necessarie autorizzazioni IAM aggiuntive se la posizione è registrata.)

Un principale con questa autorizzazione può inserire, aggiornare e leggere i dati sottostanti nella posizione Amazon S3 specificata dalla tabella. Il responsabile può anche visualizzare la tabella nella console Lake Formation e recuperare informazioni sulla tabella con l'AWS GlueAPI.

L'esempio seguente concede l'INSERTautorizzazione all'utente datalake_user1 sulla tabella del database inventory retail nell' AWS account 1111-2222-3333.

aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "INSERT" --resource '{ "Table": {"DatabaseName":"retail", "Name":"inventory"}}'

Questa autorizzazione si applica solo ai dati in Amazon S3 e non ai dati in altri archivi di dati come Amazon RDS.

SELECT

Autorizzazione Concesso su questa risorsa Inoltre, il beneficiario ha bisogno
SELECT
  • TABLE

(Non sono necessarie autorizzazioni IAM aggiuntive se la posizione è registrata.)

Un principale con questa autorizzazione può visualizzare una tabella nel catalogo dati e interrogare i dati sottostanti in Amazon S3 nella posizione specificata dalla tabella. Il responsabile può visualizzare la tabella nella console di Lake Formation e recuperare informazioni sulla tabella con l'AWS GlueAPI. Se il filtraggio delle colonne è stato applicato quando è stata concessa questa autorizzazione, il principale può visualizzare i metadati solo per le colonne incluse e può interrogare i dati solo dalle colonne incluse.

Nota

È responsabilità del servizio di analisi integrato applicare il filtro delle colonne durante l'elaborazione di una query.

L'esempio seguente concede l'SELECTautorizzazione all'utente datalake_user1 sulla tabella del database inventory retail nell' AWS account 1111-2222-3333.

aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "SELECT" --resource '{ "Table": {"DatabaseName":"retail", "Name":"inventory"}}'

Questa autorizzazione si applica solo ai dati in Amazon S3 e non ai dati in altri archivi di dati come Amazon RDS.

Puoi filtrare (limitare l'accesso a) colonne specifiche con un elenco di inclusione o un elenco di esclusione facoltativo. Un elenco di inclusione specifica le colonne a cui è possibile accedere. Un elenco di esclusione specifica le colonne a cui non è possibile accedere. In assenza di un elenco di inclusione o esclusione, tutte le colonne della tabella sono accessibili.

I risultati glue:GetTable restituiscono solo le colonne che il chiamante è autorizzato a visualizzare. I servizi integrati come Amazon Athena e Amazon Redshift rispettano gli elenchi di inclusione ed esclusione delle colonne.

L'esempio seguente concede SELECT all'utente presente nella tabella l'inventoryutilizzo di datalake_user1 un elenco di inclusione.

aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "SELECT" --resource '{ "TableWithColumns": {"DatabaseName":"retail", "Name":"inventory", "ColumnNames": ["prodcode","location","period","withdrawals"]}}'

L'esempio successivo prevede l'utilizzo di SELECT un elenco di esclusione inventory nella tabella.

aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "SELECT" --resource '{ "TableWithColumns": {"DatabaseName":"retail", "Name":"inventory", "ColumnWildcard": {"ExcludedColumnNames": ["intkey", "prodcode"]}}}'

Le seguenti restrizioni si applicano all'SELECTautorizzazione:

  • Quando si concedeSELECT, non è possibile includere l'opzione di concessione se viene applicato il filtro delle colonne.

  • Non è possibile limitare il controllo dell'accesso alle colonne che sono chiavi di partizione.

  • A un principale con l'SELECTautorizzazione su un sottoinsieme di colonne di una tabella non può essere concessa l'INSERTautorizzazioneALTER,DROP,DELETE, o per quella tabella. Analogamente, a un principale con l'INSERTautorizzazione ALTERDROP,DELETE, o su una tabella non può essere concessa l'SELECTautorizzazione con il filtro delle colonne.

L'SELECTautorizzazione appare sempre nella pagina Autorizzazioni dati della console Lake Formation come una riga separata. L'immagine seguente mostra che SELECT è concesso agli utenti datalake_user2 e datalake_user3 su tutte le colonne della inventory tabella.

La pagina Autorizzazioni dati mostra due righe per l'utente datalake_user1 e l'inventario delle tabelle. La prima riga elenca le autorizzazioni di eliminazione e inserimento con la tabella del tipo di risorsa, mentre la seconda riga elenca l'autorizzazione Seleziona con il tipo di risorsa Column e con la risorsa visualizzata come retail.inventory.*.

Super

Autorizzazione Concesso su questa risorsa Anche il beneficiario ha bisogno
Super DATABASE glue:*Database*
Super TABLE glue:*Table*, glue:*Partition*

Questa autorizzazione consente a un principale di eseguire tutte le operazioni di Lake Formation supportate sul database o sulla tabella. Non puoi concedere Super un database a un account esterno.

Questa autorizzazione può coesistere con le altre autorizzazioni di Lake Formation. Ad esempio, puoi concedere le INSERT autorizzazioni SuperSELECT, e su una tabella di metadati. Il principale può quindi eseguire tutte le operazioni supportate sulla tabella. Quando si revocaSuper, i INSERT permessi SELECT and rimangono e il principale può eseguire solo operazioni di selezione e inserimento.

Invece di concedere Super a un singolo committente, puoi concederlo al gruppo. IAMAllowedPrincipals Il IAMAllowedPrincipals gruppo viene creato automaticamente e include tutti gli utenti e i ruoli IAM a cui è consentito l'accesso alle risorse del Data Catalog dalle politiche IAM. Quando Super viene concesso a IAMAllowedPrincipals una risorsa Data Catalog, l'accesso alla risorsa è effettivamente controllato esclusivamente dalle politiche IAM.

Puoi avere l'Superautorizzazione da concedere automaticamente IAMAllowedPrincipals per nuove risorse del catalogo sfruttando le opzioni nella pagina Impostazioni della console Lake Formation.

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.
  • Per concedere Super a IAMAllowedPrincipals tutti i nuovi database, seleziona Usa solo il controllo di accesso IAM per i nuovi database.

  • Per concedere Super a IAMAllowedPrincipals tutte le nuove tabelle nei nuovi database, seleziona Usa solo il controllo di accesso IAM per le nuove tabelle nei nuovi database.

    Nota

    Questa opzione fa sì che la casella di controllo Usa solo il controllo di accesso IAM per le nuove tabelle in questo database nella finestra di dialogo Crea database sia selezionata per impostazione predefinita. Non fa altro che questo. È la casella di controllo nella finestra di dialogo Crea database che abilita la concessione di Super aIAMAllowedPrincipals.

Queste opzioni della pagina Impostazioni sono abilitate per impostazione predefinita. Per ulteriori informazioni, consulta gli argomenti seguenti:

ASSOCIATE

Autorizzazione Concesso su questa risorsa Inoltre, il beneficiario ha bisogno
ASSOCIATE LF-Tag

glue:GetDatabase

glue:GetTable

lakeformation:AddLFTagsToResource"

lakeformation:RemoveLFTagsFromResource"

lakeformation:GetResourceLFTags

lakeformation:ListLFTags

lakeformation:GetLFTag

lakeformation:SearchTablesByLFTags

lakeformation:SearchDatabasesByLFTags

Un principale con questa autorizzazione su un tag LF può assegnare il tag LF a una risorsa del catalogo dati. ASSOCIATEDESCRIBEConcedere concessioni implicite.

Questo esempio concede all'utente l'ASSOCIATEautorizzazione per datalake_user1 il tag LF con la chiave. module Concede le autorizzazioni per visualizzare e assegnare tutti i valori per quella chiave, come indicato dall'asterisco (*).

aws lakeformation grant-permissions --principal DataLakePrincipalIdentifier=arn:aws:iam::111122223333:user/datalake_user1 --permissions "ASSOCIATE" --resource '{ "LFTag": {"CatalogId":"111122223333","TagKey":"module","TagValues":["*"]}}'