Dela via


Privilegier och skyddsbara objekt i Unity Catalog

gäller för:kryssmarkerad ja Databricks SQL kryssmarkerad ja Databricks Runtime kryssmarkerad ja Unity Catalog endast

En behörighet är en rättighet som beviljas ett huvudnamn att arbeta med ett skyddsbart objekt i metaarkivet. Behörighetsmodellen och skyddsbara objekt skiljer sig åt beroende på om du använder ett Unity Catalog-metaarkiv eller det äldre Hive-metaarkivet. I den här artikeln beskrivs behörighetsmodellen för Unity Catalog. Om du använder Hive-metaarkivet läser du Privilegier och skyddsbara objekt i Hive-metaarkivet.

Detaljerad information om hur du hanterar privilegier i Unity Catalog finns i Hantera privilegier i Unity Catalog.

Kommentar

Den här artikeln refererar till Unity Catalog-privilegier och arvsmodellen i Privilege Model version 1.0. Om du skapade din Unity Catalog Metastore under den offentliga förhandsversionen (före den 25 augusti 2022) kanske du använder en äldre behörighetsmodell som inte stöder den aktuella arvsmodellen. Du kan uppgradera till Privilege Model version 1.0 för att få privilegiearv. Se Uppgradera till arv av privilegier.

Skyddsbara objekt

Ett skyddsbart objekt är ett objekt som definierats i metastore Unity Catalog där privilegier kan beviljas till en principal. En fullständig lista över skyddsbara objekt i Unity Catalog och de behörigheter som kan beviljas för dem finns i Unity Catalog-privilegier och skyddsbara objekt.

Om du vill hantera behörigheter för ett objekt måste du vara dess ägare eller ha MANAGE behörighet för objektet, samt USE CATALOG i objektets överordnade katalog och USE SCHEMA på dess överordnade schema.

Syntax

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
  }

Du kan också ange SERVER i stället för CONNECTION och DATABASE i stället för SCHEMA.

Parametrar

  • CATALOG catalog_name

    Styr åtkomsten till hela datakatalogen.

  • CLEAN ROOM clean_room_name

    Styr åtkomsten till ett rent rum.

  • CONNECTION connection_name

    Styr åtkomsten till anslutningen.

  • EXTERNAL LOCATION location_name

    Styr åtkomsten till en extern plats.

  • FUNCTION function_name

    Styr åtkomsten till en användardefinierad funktion eller en MLflow-registrerad modell.

  • MATERIALIZED VIEW view_name

    Styr åtkomsten till en materialiserad vy.

  • METASTORE

    Styr åtkomsten till Unity Catalog-metaarkivet som är kopplat till arbetsytan. När du hanterar behörigheter i ett metaarkiv inkluderar du inte metaarkivnamnet i ett SQL-kommando. Unity Catalog beviljar eller återkallar behörigheten för det metaarkiv som är kopplat till din arbetsyta.

  • SCHEMA schema_name

    Styr åtkomsten till ett schema.

  • [ STORAGE | SERVICE ] CREDENTIAL credential_name

    Styr åtkomsten till en autentiseringsuppgift.

    STORAGE Nyckelorden och SERVICE (markerad ja Databricks Runtime 15.4 och senare) är valfria.

  • SHARE share_name

    Styr åtkomsten på en resurs till en mottagare.

  • TABLE table_name

    Styr åtkomsten till en hanterad eller extern tabell. Om det inte går att hitta tabellen skapar Azure Databricks ett TABLE_OR_VIEW_NOT_FOUND fel.

  • VIEW view_name

    Styr åtkomsten till en vy. Om vyn inte kan hittas genererar Azure Databricks ett TABLE_OR_VIEW_NOT_FOUND fel.

  • VOLUME volume_name

    Styr åtkomsten till en volym. Om volymen inte kan hittas genererar Azure Databricks ett fel.

Behörighetstyper

En lista över behörighetstyper finns i Unity Catalog-privilegier och skyddsbara objekt.

Exempel

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