Privilegi e oggetti a protezione diretta nel catalogo unity
Si applica solo a: Catalogo Unity di Databricks SQL Databricks Runtime
Un privilegio è un diritto concesso a un'entità per operare su un oggetto a protezione diretta nel metastore. Il modello di privilegio e gli oggetti a protezione diretta variano a seconda che si usi un metastore del catalogo Unity o il metastore Hive legacy. Questo articolo descrive il modello di privilegio per il catalogo Unity. Se si usa il metastore Hive, vedere Privilegi e oggetti a protezione diretta nel metastore Hive
Nota
Questo articolo fa riferimento ai privilegi del catalogo Unity e al modello di ereditarietà nel modello di privilegio versione 1.0. Se è stato creato il metastore del catalogo Unity durante l'anteprima pubblica (prima del 25 agosto 2022), eseguire l'aggiornamento al modello di privilegio versione 1.0 seguendo l'aggiornamento all'ereditarietà dei privilegi.
Oggetti a protezione diretta
Un oggetto a protezione diretta è un oggetto definito nel metastore del Catalogo Unity in cui è possibile concedere privilegi a un'entità. Per gestire i privilegi per qualsiasi oggetto, è necessario essere il proprietario.
Sintassi
securable_object
{ CATALOG [ catalog_name ] |
CONNECTION connection_name |
EXTERNAL LOCATION location_name |
FUNCTION function_name |
METASTORE |
SCHEMA schema_name |
SHARE share_name |
STORAGE CREDENTIAL credential_name |
[ TABLE ] table_name |
MATERIALIZED VIEW view_name |
VIEW view_name |
VOLUME volume_name
}
È anche possibile specificare SERVER
anziché CONNECTION
e DATABASE
anziché SCHEMA
.
Parametri
CATALOG
catalog_nameControlla l'accesso all'intero catalogo dati.
CONNECTION
connection_nameControlla l'accesso alla connessione.
EXTERNAL LOCATION
location_nameControlla l'accesso a una posizione esterna.
FUNCTION
function_nameControlla l'accesso a una funzione definita dall'utente.
MATERIALIZED VIEW
view_nameImportante
Questa funzionalità è disponibile in anteprima pubblica. Per iscriversi per l'accesso, compilare questo modulo.
Controlla l'accesso a una vista materializzata.
METASTORE
Controlla l'accesso al metastore del catalogo Unity collegato all'area di lavoro. Quando si gestiscono i privilegi in un metastore, non si include il nome del metastore in un comando SQL. Il catalogo unity concede o revoca il privilegio nel metastore collegato all'area di lavoro.
REGISTERED MODEL
Controlla l'accesso a un modello registrato MLflow.
SCHEMA
schema_nameControlla l'accesso a uno schema.
STORAGE CREDENTIAL
credential_nameControlla l'accesso a una credenziale di archiviazione.
SHARE
share_nameControlla l'accesso a una condivisione a un destinatario.
TABLE
table_nameControlla l'accesso a una tabella gestita o esterna. Se la tabella non è stata trovata, Azure Databricks genera un errore di TABLE_OR_VIEW_NOT_FOUND .
VIEW
view_nameControlla l'accesso a una visualizzazione. Se non è possibile trovare la vista azure Databricks genera un errore di TABLE_OR_VIEW_NOT_FOUND .
VOLUME
volume_nameControlla l'accesso a un volume. Se il volume non è stato trovato, Azure Databricks genera un errore.
Modello di ereditarietà
Gli oggetti a protezione diretta nel catalogo unity sono gerarchici e i privilegi vengono ereditati verso il basso. Ciò significa che la concessione di un privilegio nel catalogo concede automaticamente il privilegio a tutti gli schemi correnti e futuri nel catalogo. Analogamente, i privilegi concessi per uno schema vengono ereditati da tutte le tabelle e le viste correnti e future in tale schema.
Ad esempio, se si concede il SELECT
privilegio per uno schema a un utente, all'utente viene concesso automaticamente il SELECT
privilegio per tutte le tabelle, le viste e le viste materializzate correnti e future nello schema.
Tipi di privilegi
La tabella seguente illustra i privilegi del catalogo Unity associati agli oggetti a protezione diretta di Unity Catalog.
Entità a protezione diretta | Privilegi |
---|---|
Metastore | CREATE CATALOG , CREATE CONNECTION , , CREATE PROVIDER CREATE RECIPIENT , CREATE SHARE , CREATE STORAGE CREDENTIAL USE MARKETPLACE ASSETS SET SHARE PERMISSION , , USE RECIPIENT USE PROVIDER CREATE EXTERNAL LOCATION USE SHARE |
Catalogo | ALL PRIVILEGES , APPLY TAG , BROWSE , CREATE SCHEMA USE CATALOG Per impostazione predefinita, tutti gli utenti dispongono USE CATALOG del main catalogo.I tipi di privilegi seguenti si applicano agli oggetti a protezione diretta in un catalogo. È possibile concedere questi privilegi a livello di catalogo per applicarli agli oggetti correnti e futuri pertinenti nel catalogo. CREATE FUNCTION , CREATE TABLE , , CREATE VOLUME CREATE FOREIGN CATALOG , READ VOLUME , REFRESH EXECUTE WRITE VOLUME , , SELECT MODIFY CREATE MODEL USE SCHEMA |
Schema | ALL PRIVILEGES , APPLY TAG , CREATE FUNCTION , CREATE TABLE CREATE MODEL , CREATE VOLUME , , CREATE MATERIALIZED VIEW USE SCHEMA I tipi di privilegi seguenti si applicano agli oggetti a protezione diretta all'interno di uno schema. È possibile concedere questi privilegi a livello di schema per applicarli agli oggetti correnti e futuri pertinenti all'interno dello schema. EXECUTE , MODIFY , SELECT , READ VOLUME , REFRESH WRITE VOLUME |
Tabella | ALL PRIVILEGES , APPLY TAG , MODIFY SELECT |
Vista materializzata | ALL PRIVILEGES , APPLY TAG , REFRESH SELECT |
Visualizza | ALL PRIVILEGES , APPLY TAG , SELECT |
Volume | ALL PRIVILEGES , READ VOLUME , WRITE VOLUME |
Posizione esterna | ALL PRIVILEGES , BROWSE , CREATE EXTERNAL TABLE , CREATE EXTERNAL VOLUME READ FILES , , WRITE FILES CREATE MANAGED STORAGE |
Credenziali di archiviazione | ALL PRIVILEGES , CREATE EXTERNAL LOCATION , CREATE EXTERNAL TABLE , READ FILES WRITE FILES |
Connessione | ALL PRIVILEGES , CREATE FOREIGN CATALOG , USE CONNECTION |
Funzione | ALL PRIVILEGES , EXECUTE |
Modello registrato | ALL PRIVILEGES , APPLY TAG , EXECUTE |
Condivisione | SELECT (Può essere concesso a RECIPIENT ) |
Recipient | Nessuno |
Provider | None |
APPLY TAG
Applicare e modificare i tag in un oggetto .
ALL PRIVILEGES
Usato per concedere o revocare tutti i privilegi applicabili all'oggetto a protezione diretta e ai relativi oggetti figlio senza specificarli in modo esplicito. Questo si espande a tutti i privilegi disponibili al momento dell'esecuzione dei controlli delle autorizzazioni. Non concede singolarmente all'utente ogni privilegio applicabile al momento della concessione.
Quando
ALL PRIVILEGES
viene revocato solo ilALL PRIVILEGES
privilegio stesso viene revocato. Gli utenti mantengono tutti gli altri privilegi concessi separatamente.BROWSE
Importante
Questa funzionalità è disponibile in anteprima pubblica.
Visualizzare i metadati di un oggetto usando Esplora cataloghi, il browser dello schema, i risultati della ricerca, il grafico di derivazione,
information_schema
e l'API REST. L'utente non richiede ilUSE CATALOG
privilegio per il catalogo padre oUSE SCHEMA
per lo schema padre.CREATE CATALOG
Creare cataloghi in un metastore del catalogo Unity.
CREATE CONNECTION
Creare connessioni esterne in un metastore del catalogo Unity.
CREATE EXTERNAL LOCATION
Creare un percorso esterno usando le credenziali di archiviazione. Se applicato a una credenziale di archiviazione, consente a un utente di creare una posizione esterna usando le credenziali di archiviazione. Questo privilegio deve anche essere concesso a un utente nel metastore per consentire loro di creare una posizione esterna in tale metastore.
CREATE EXTERNAL TABLE
Creare tabelle esterne usando le credenziali di archiviazione o il percorso esterno.
CREATE EXTERNAL VOLUME
CREATE FOREIGN CATALOG
Creare cataloghi in una connessione esterna. Ogni catalogo esterno espone quindi gli schemi disponibili nel sistema di destinazione federato.
CREATE FUNCTION
Creare una funzione in uno schema. L'utente richiede anche il
USE CATALOG
privilegio per il catalogo e ilUSE SCHEMA
privilegio per lo schema.CREATE MANAGED STORAGE
Consente a un utente di specificare un percorso per l'archiviazione di tabelle gestite a livello di catalogo o schema, ignorando l'archiviazione radice predefinita per il metastore del catalogo Unity.
CREATE MATERIALIZED VIEW
Consente a un utente di creare una vista materializzata nello schema. Poiché i privilegi vengono ereditati,
CREATE MATERIALIZED VIEW
possono essere concessi anche in un catalogo, che consente a un utente di creare una tabella o una vista in qualsiasi schema esistente o futuro nel catalogo.L'utente deve anche avere il
USE CATALOG
privilegio per il catalogo padre eUSE SCHEMA
per lo schema padre.CREATE MODEL
Consente a un utente di creare un modello registrato MLflow nello schema. Poiché i privilegi vengono ereditati,
CREATE MODEL
possono essere concessi anche in un catalogo, che consente a un utente di creare un modello registrato in qualsiasi schema esistente o futuro nel catalogo.L'utente deve anche avere il
USE CATALOG
privilegio per il catalogo padre eUSE SCHEMA
per lo schema padre.CREATE PROVIDER
(Per i destinatari dei dati di condivisione differenziale) Creare un provider in un metastore del catalogo Unity.
CREATE RECIPIENT
(Per i provider di dati di condivisione delta) Creare un destinatario in un metastore del catalogo Unity.
CREATE SCHEMA
Creare uno schema in un catalogo. L'utente richiede anche il
USE CATALOG
privilegio nel catalogo.CREATE SHARE
(Per i provider di dati di condivisione delta) Creare una condivisione in un metastore del catalogo Unity.
CREATE STORAGE CREDENTIAL
Creare credenziali di archiviazione in un metastore del catalogo Unity.
CREATE TABLE
Creare una tabella o una vista in uno schema. L'utente richiede anche il
USE CATALOG
privilegio per il catalogo e ilUSE SCHEMA
privilegio per lo schema. Per creare una tabella esterna, l'utente richiede anche ilCREATE EXTERNAL TABLE
privilegio per la posizione esterna o le credenziali di archiviazione.CREATE VOLUME
Creare un volume in uno schema. L'utente richiede anche il
USE CATALOG
privilegio per il catalogo e ilUSE SCHEMA
privilegio per lo schema. Per creare un volume esterno, l'utente richiede anche ilCREATE EXTERNAL VOLUME
privilegio per la posizione esterna.EXECUTE
Richiamare una funzione definita dall'utente. L'utente richiede anche il
USE CATALOG
privilegio per il catalogo e ilUSE SCHEMA
privilegio per lo schema.MODIFY
COPY INTO, UPDATEDELETE, IN edizione Standard RT o MERGE NELLA tabella.
READ FILES
Eseguire query sui file direttamente usando le credenziali di archiviazione o il percorso esterno.
READ VOLUME
Eseguire query sui file all'interno del volume.
REFRESH
Consente a un utente di aggiornare una vista materializzata se l'utente dispone
USE CATALOG
anche del catalogo padre eUSE SCHEMA
del relativo schema padre. L'utente richiede anche ilUSE CATALOG
privilegio per il catalogo e ilUSE SCHEMA
privilegio per lo schema.SELECT
Eseguire query su una tabella o una vista, richiamare una funzione definita dall'utente o anonima oppure selezionare
ANY FILE
. L'utente deveSELECT
disporre della tabella, della vista o della funzione, nonchéUSE CATALOG
del catalogo dell'oggetto eUSE SCHEMA
dello schema dell'oggetto.SET SHARE PERMISSION
In Condivisione differenziale questa autorizzazione, combinata con
USE SHARE
eUSE RECIPIENT
(o proprietà del destinatario), consente a un utente del provider di concedere a un destinatario l'accesso a una condivisione. In combinazione conUSE SHARE
, consente di trasferire la proprietà di una condivisione a un altro utente, gruppo o entità servizio.USE CATALOG
Obbligatorio, ma non sufficiente per fare riferimento a qualsiasi oggetto in un catalogo. L'entità deve anche disporre di privilegi per i singoli oggetti a protezione diretta. Non è necessario che un utente usi la lettura dei metadati di un oggetto usando il
BROWSE
privilegio .USE CONNECTION
Obbligatorio per leggere i metadati in una connessione esterna o in tutte le connessioni esterne quando vengono usate nel metastore.
USE MARKETPLACE ASSETS
Abilitato per impostazione predefinita per tutti i metastore del catalogo Unity. In Databricks Marketplace, questo privilegio offre a un utente la possibilità di ottenere l'accesso immediato o richiedere l'accesso per i prodotti dati condivisi in una presentazione del Marketplace. Consente inoltre a un utente di accedere al catalogo di sola lettura creato quando un provider condivide un prodotto dati. Senza questo privilegio, l'utente richiederà i
CREATE CATALOG
privilegi eUSE PROVIDER
o il ruolo di amministratore del metastore. In questo modo è possibile limitare il numero di utenti con tali autorizzazioni avanzate.USE PROVIDER
In Delta Sharing consente a un utente destinatario di accedere in sola lettura a tutti i provider in un metastore destinatario e alle relative condivisioni. In combinazione con il
CREATE CATALOG
privilegio , questo privilegio consente a un utente destinatario che non è un amministratore del metastore di montare una condivisione come catalogo. In questo modo è possibile limitare il numero di utenti con il potente ruolo di amministratore del metastore.USE RECIPIENT
In Delta Sharing consente a un utente del provider di accedere in sola lettura a tutti i destinatari in un metastore del provider e alle relative condivisioni. Ciò consente a un utente del provider che non è un amministratore del metastore di visualizzare i dettagli del destinatario, lo stato di autenticazione del destinatario e l'elenco di condivisioni condivise dal provider con il destinatario.
In Databricks Marketplace, questo offre agli utenti del provider la possibilità di visualizzare presentazioni e richieste consumer nella console provider.
USE SCHEMA
Obbligatorio, ma non sufficiente per fare riferimento a qualsiasi oggetto in uno schema. L'entità deve anche disporre di privilegi per i singoli oggetti a protezione diretta. Non è necessario che un utente usi la lettura dei metadati di un oggetto usando il
BROWSE
privilegio .USE SHARE
In Delta Sharing consente a un utente del provider di accedere in sola lettura a tutte le condivisioni definite in un metastore del provider. Ciò consente a un utente del provider che non è un amministratore del metastore di elencare le condivisioni ed elencare gli asset (tabelle e notebook) in una condivisione, insieme ai destinatari della condivisione.
In Databricks Marketplace, questo offre agli utenti del provider la possibilità di visualizzare i dettagli sui dati condivisi in una presentazione.
WRITE FILES
Copiare direttamente i file INTO regolati dalle credenziali di archiviazione o dal percorso esterno.
WRITE VOLUME
Esempi
-- Grant a privilege to the user alf@melmak.et
> GRANT SELECT ON TABLE t TO `alf@melmak.et`;
-- Revoke a privilege from the general public group.
> REVOKE USE SCHEMA ON SCHEMA some_schema FROM `alf@melmak.et`;
Elementi correlati
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per