Condividi tramite


Privilegi e oggetti a protezione diretta nel catalogo unity

Si applica solo a:segno di spunta sìDatabricks SQL segno di spunta sì Databricks Runtime segno di spunta sì Unity Catalog

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.

Per informazioni dettagliate su come gestire i privilegi nel catalogo unity, vedere Gestire i privilegi nel catalogo unity.

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), si potrebbe essere in un modello di privilegio precedente che non supporta il modello di ereditarietà corrente. È possibile eseguire l'aggiornamento al modello di privilegio versione 1.0 per ottenere l'ereditarietà dei privilegi. Si veda Eseguire 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 un elenco completo degli oggetti a protezione diretta di Unity Catalog e dei privilegi che possono essere concessi, vedere Privilegi del catalogo Unity e oggetti a protezione diretta.

Per gestire i privilegi per qualsiasi oggetto, è necessario essere il proprietario.

Sintassi

securable_object
  { CATALOG [ catalog_name ] |
    CONNECTION connection_name |
    CLEAN ROOM clean_room_name |
    EXTERNAL LOCATION location_name |
    FUNCTION function_name |
    METASTORE |
    SCHEMA schema_name |
    SHARE share_name |
    [ STORAGE | SERVICE ] 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

  • CATALOGcatalog_name

    Controlla l'accesso all'intero catalogo dati.

  • CLEAN ROOMclean_room_name

    Controlla l'accesso a una stanza pulita.

  • CONNECTIONconnection_name

    Controlla l'accesso alla connessione.

  • EXTERNAL LOCATIONlocation_name

    Controlla l'accesso a una posizione esterna.

  • FUNCTIONfunction_name

    Controlla l'accesso a una funzione definita dall'utente o a un modello registrato MLflow.

  • MATERIALIZED VIEWview_name

    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.

  • SCHEMAschema_name

    Controlla l'accesso a uno schema.

  • [ STORAGE | SERVICE ] CREDENTIALcredential_name

    Controlla l'accesso a una credenziale.

    Le parole chiave STORAGE e SERVICE (segno di spunta sì Databricks Runtime 15.4 e versioni successive) sono facoltative.

  • SHAREshare_name

    Controlla l'accesso a una condivisione a un destinatario.

  • TABLEtable_name

    Controlla l'accesso a una tabella gestita o esterna. Se la tabella non è stata trovata, Azure Databricks genera un errore TABLE_OR_VIEW_NOT_FOUND.

  • VIEWview_name

    Controlla l'accesso a una visualizzazione. Se non è possibile trovare la vista azure Databricks genera un errore di TABLE_OR_VIEW_NOT_FOUND .

  • VOLUMEvolume_name

    Controlla l'accesso a un volume. Se il volume non è stato trovato, Azure Databricks genera un errore.

Tipi di privilegi

Per un elenco dei tipi di privilegi, vedere Privilegi del catalogo Unity e oggetti a protezione diretta.

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`;