Berechtigungen und sicherungsfähige Objekte in Unity Catalog
Gilt für: Databricks SQL Databricks Runtime Nur Unity Catalog
Eine Berechtigung ist ein Recht, das einem Prinzipal zum Arbeiten mit einem sicherungsfähigen Objekt im Metastore erteilt wird. Das Berechtigungsmodell und sicherungsfähige Objekte unterscheiden sich je nachdem, ob Sie einen Unity Catalog-Metastore oder den Hive-Legacymetastore verwenden. In diesem Artikel wird das Berechtigungsmodell für Unity Catalog beschrieben. Wenn Sie den Hive-Metastore verwenden, lesen Sie Berechtigungen und sicherungsfähige Objekte im Hive-Metastore.
Hinweis
Dieser Artikel bezieht sich auf die Unity Catalog-Berechtigungen und das Vererbungsmodell in Version 1.0 des Berechtigungsmodells (Privilege Model). Wenn Sie ihren Unity Catalog-Metastore während der öffentlichen Vorschau (vor dem 25. August 2022) erstellt haben, führen Sie anhand von Upgrade auf die Berechtigungsvererbung ein Upgrade auf Version 1.0 des Berechtigungsmodells aus.
Sicherungsfähige Objekte
Ein sicherungsfähiges Objekt ist ein im Unity Catalog-Metastore definiertes Objekt, für das einem Prinzipal Berechtigungen gewährt werden können. Damit Sie Berechtigungen für ein Objekt verwalten können, müssen Sie dessen Besitzer sein.
Syntax
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
}
Sie können auch SERVER
anstelle von CONNECTION
und DATABASE
anstelle von SCHEMA
angeben.
Parameter
CATALOG
catalog_nameSteuert den Zugriff auf den gesamten Datenkatalog.
CONNECTION
connection_nameSteuert den Zugriff auf die Verbindung.
EXTERNAL LOCATION
location_nameSteuert den Zugriff auf einen externen Speicherort.
FUNCTION
function_nameSteuert den Zugriff auf eine benutzerdefinierte Funktion.
MATERIALIZED VIEW
view_nameWichtig
Dieses Feature befindet sich in der Public Preview. Um sich zu registrieren und Zugriff zu erhalten, füllen Sie dieses Formular aus.
Steuert den Zugriff auf eine materialisierte Sicht.
METASTORE
Steuert den Zugriff auf den Unity Catalog-Metastore, der an den Arbeitsbereich angefügt ist. Wenn Sie Berechtigungen für einen Metastore verwalten, beziehen Sie den Metastorenamen nicht in einen SQL-Befehl mit ein. Unity Catalog gewährt oder widerruft die Berechtigung für den an Ihren Arbeitsbereich angefügten Metastore.
REGISTERED MODEL
Steuert den Zugriff auf ein registriertes MLflow-Modell.
SCHEMA
schema_nameSteuert den Zugriff auf ein Schema.
STORAGE CREDENTIAL
credential_nameSteuert den Zugriff auf Speicheranmeldeinformationen.
SHARE
share_nameTABLE
table_nameSteuert den Zugriff auf eine verwaltete oder externe Tabelle. Wenn die Tabelle nicht gefunden werden kann, löst Azure Databricks den Fehler TABLE_OR_VIEW_NOT_FOUND aus.
VIEW
view_nameSteuert den Zugriff auf eine Sicht. Wenn die Sicht nicht gefunden werden kann, löst Azure Databricks den Fehler TABLE_OR_VIEW_NOT_FOUND aus.
VOLUME
volume_nameSteuert den Zugriff auf ein Volume. Wenn das Volume nicht gefunden wird, löst Azure Databricks einen Fehler aus.
Vererbungsmodell
Sicherungsobjekte in Unity Catalog sind hierarchisch, und Berechtigungen werden abwärts vererbt. Das bedeutet, dass die Gewährung einer Berechtigung für den Katalog automatisch die Berechtigung für alle aktuellen und zukünftigen Schemas im Katalog gewährt. Ebenso werden die für ein Schema gewährten Berechtigungen von allen aktuellen und zukünftigen Tabellen und Sichten in diesem Schema geerbt.
Wenn Sie beispielsweise einem Benutzer die SELECT
-Berechtigung für ein Schema erteilen, erhält der Benutzer automatisch die SELECT
-Berechtigung für alle aktuellen und zukünftigen Tabellen, Sichten und materialisierten Sichten im Schema.
Berechtigungstypen
Die folgende Tabelle zeigt, welche Unity Catalog-Berechtigungen welchen sicherungsfähigen Unity Catalog-Objekten zugeordnet sind.
Sicherungsfähiges Element | Rechte |
---|---|
Metastore | CREATE CATALOG , CREATE CONNECTION , CREATE EXTERNAL LOCATION , CREATE PROVIDER , CREATE RECIPIENT , CREATE SHARE , CREATE STORAGE CREDENTIAL , SET SHARE PERMISSION , USE MARKETPLACE ASSETS , USE PROVIDER , USE RECIPIENT , USE SHARE |
Katalog | ALL PRIVILEGES , APPLY TAG , BROWSE , CREATE SCHEMA , USE CATALOG Alle Benutzer verfügen standardmäßig über USE CATALOG für den main -Katalog.Die folgenden Berechtigungstypen gelten für sicherungsfähige Objekte in einem Katalog. Sie können diese Berechtigungen auf Katalogebene gewähren, um sie auf die relevanten aktuellen und zukünftigen Objekte im Katalog anzuwenden. CREATE FUNCTION , CREATE TABLE , CREATE MODEL , CREATE VOLUME , CREATE FOREIGN CATALOG , READ VOLUME , REFRESH , WRITE VOLUME , EXECUTE , MODIFY , SELECT , USE SCHEMA |
Schema | ALL PRIVILEGES , APPLY TAG , CREATE FUNCTION , CREATE TABLE , CREATE MODEL , CREATE VOLUME , CREATE MATERIALIZED VIEW , USE SCHEMA Die folgenden Berechtigungstypen gelten für sicherungsfähige Objekte in einem Schema. Sie können diese Berechtigungen auf Schemaebene gewähren, um sie auf die relevanten aktuellen und zukünftigen Objekte im Schema anzuwenden. EXECUTE , MODIFY , SELECT , READ VOLUME , REFRESH , WRITE VOLUME |
Tabelle | ALL PRIVILEGES , APPLY TAG , MODIFY , SELECT |
Materialisierte Sicht | ALL PRIVILEGES , APPLY TAG , REFRESH , SELECT |
Sicht | ALL PRIVILEGES , APPLY TAG , SELECT |
Volume | ALL PRIVILEGES , READ VOLUME , WRITE VOLUME |
Externer Speicherort | ALL PRIVILEGES , BROWSE , CREATE EXTERNAL TABLE , CREATE EXTERNAL VOLUME , READ FILES , WRITE FILES , CREATE MANAGED STORAGE |
Speicheranmeldeinformationen | ALL PRIVILEGES , CREATE EXTERNAL LOCATION , CREATE EXTERNAL TABLE , READ FILES , WRITE FILES |
Verbindung | ALL PRIVILEGES , CREATE FOREIGN CATALOG , USE CONNECTION |
Funktion | ALL PRIVILEGES , EXECUTE |
Registriertes Modell | ALL PRIVILEGES , APPLY TAG , EXECUTE |
Freigabe | SELECT (kann gewährt RECIPIENT werden) |
Recipient | Keine |
Anbieter | None |
APPLY TAG
Wenden Sie Tags für ein Objekt an und bearbeiten Sie sie.
ALL PRIVILEGES
Wird zum Gewähren oder Widerrufen aller Berechtigungen verwendet, die für die sicherungsfähigen Objekte und deren untergeordnete Objekte gelten, ohne sie explizit anzugeben. Dies wird zum Zeitpunkt der Berechtigungsprüfungen auf alle verfügbaren Berechtigungen erweitert. Zum Zeitpunkt der Erteilung wird Benutzer*innen nicht jede anwendbare Berechtigung einzeln gewährt.
Wenn
ALL PRIVILEGES
widerrufen wird, wird nur die BerechtigungALL PRIVILEGES
selbst widerrufen. Benutzer*innen behalten alle anderen Berechtigungen, die ihnen separat gewährt wurden.BROWSE
Wichtig
Dieses Feature befindet sich in der Public Preview.
Sehen Sie sich die Metadaten eines Objekts mit dem Catalog-Explorer, dem Schemabrowser, den Suchergebnissen, dem Herkunftsdiagramm,
information_schema
, und der REST API an. Eine Benutzerin oder ein Benutzer muss nicht über die BerechtigungUSE CATALOG
im übergeordneten Katalog und die BerechtigungUSE SCHEMA
im übergeordneten Schema verfügen.CREATE CATALOG
Erstellen Sie Kataloge in einem Unity Catalog-Metastore.
CREATE CONNECTION
Erstellen Sie Fremdverbindungen in einem Unity Catalog-Metastore.
CREATE EXTERNAL LOCATION
Erstellen Sie mithilfe von Speicheranmeldeinformationen einen externen Speicherort. Wenn sie auf eine Speicheranmeldeinformationen angewendet werden, können Benutzer mithilfe der Speicheranmeldeinformationen einen externen Speicherort erstellen. Diese Berechtigung muss auch einem Benutzer im Metastore gewährt werden, damit er einen externen Speicherort in diesem Metastore erstellen kann.
CREATE EXTERNAL TABLE
Erstellen Sie externe Tabellen mit Speicheranmeldeinformationen oder dem externen Speicherort.
CREATE EXTERNAL VOLUME
Erstellen Sie externe Volumes mithilfe des externen Speicherorts.
CREATE FOREIGN CATALOG
Erstellen Sie Kataloge für eine Fremdverbindung. Jeder Fremdkatalog macht dann die Schemas verfügbar, die im Verbundzielsystem verfügbar sind.
CREATE FUNCTION
Erstellen Sie eine Funktion in einem Schema. Der Benutzer benötigt außerdem die
USE CATALOG
-Berechtigung für den Katalog und dieUSE SCHEMA
-Berechtigung für das Schema.CREATE MANAGED STORAGE
Ermöglicht einem Benutzer das Angeben eines Speicherorts für verwaltete Tabellen auf Katalog- oder Schemaebene, wobei der Standardstammspeicher für den Unity Catalog-Metastore außer Kraft gesetzt wird.
CREATE MATERIALIZED VIEW
Ermöglicht Benutzern und Benutzerinnen, eine materialisierte Sicht im Schema zu erstellen. Da Berechtigungen vererbt werden, kann
CREATE MATERIALIZED VIEW
auch für einen Katalog gewährt werden. Dies ermöglicht es einem Benutzer, eine Tabelle oder Ansicht in jedem beliebigen vorhandenen oder zukünftigen Schema im Katalog zu erstellen.Der Benutzer muss auch über die
USE CATALOG
Berechtigung im übergeordneten Katalog undUSE SCHEMA
die Berechtigung im übergeordneten Schema verfügen.CREATE MODEL
Ermöglicht es einem Benutzer, ein bei MLflow registriertes Modell im Schema zu erstellen. Da Berechtigungen vererbt werden, kann
CREATE MODEL
auch für einen Katalog gewährt werden. Dies ermöglicht es einem Benutzer, ein registriertes Modell in jedem beliebigen vorhandenen oder zukünftigen Schema im Katalog zu erstellen.Der Benutzer muss auch über die
USE CATALOG
Berechtigung im übergeordneten Katalog undUSE SCHEMA
die Berechtigung im übergeordneten Schema verfügen.CREATE PROVIDER
(Für Delta Sharing-Datenempfänger) Erstellen Sie einen Anbieter in einem Unity Catalog-Metastore.
CREATE RECIPIENT
(Für Delta Sharing-Datenanbieter) Erstellen Sie einen Empfänger in einem Unity Catalog-Metastore.
CREATE SCHEMA
Erstellen Sie ein Schema in einem Katalog. Der Benutzer benötigt außerdem die Berechtigung
USE CATALOG
für den Katalog.CREATE SHARE
(Für Delta Sharing-Datenanbieter) Erstellen Sie eine Freigabe in einem Unity Catalog-Metastore.
CREATE STORAGE CREDENTIAL
Erstellen von Speicheranmeldeinformationen in einem Unity Catalog-Metastore.
CREATE TABLE
Erstellen Sie eine Tabelle oder Ansicht in einem Schema. Der Benutzer benötigt außerdem die
USE CATALOG
-Berechtigung für den Katalog und dieUSE SCHEMA
-Berechtigung für das Schema. Um eine externe Tabelle zu erstellen, benötigt der Benutzer auch dieCREATE EXTERNAL TABLE
Berechtigung für den externen Speicherort oder die Speicheranmeldeinformationen.CREATE VOLUME
Erstellen Sie ein Volume in einem Schema. Der Benutzer benötigt außerdem die
USE CATALOG
-Berechtigung für den Katalog und dieUSE SCHEMA
-Berechtigung für das Schema. Um ein externes Volume zu erstellen, benötigt der Benutzer außerdem dieCREATE EXTERNAL VOLUME
-Berechtigung für den externen Speicherort.EXECUTE
Rufen Sie eine benutzerdefinierte Funktion auf. Der Benutzer benötigt außerdem die
USE CATALOG
-Berechtigung für den Katalog und dieUSE SCHEMA
-Berechtigung für das Schema.MODIFY
Umfasst die Anweisungen COPY INTO, UPDATE, DELETE, INSERT und MERGE INTO für die Tabelle.
READ FILES
Sie können Dateien direkt über die Speicheranmeldeinformationen oder den externen Speicherort abfragen.
READ VOLUME
Fragen Sie Dateien innerhalb des Volumes ab.
REFRESH
Ermöglicht Benutzern und Benutzerinnen, eine materialisierte Sicht zu aktualisieren, wenn sie auch die Berechtigungen
USE CATALOG
im übergeordneten Katalog undUSE SCHEMA
im übergeordneten Schema haben. Der Benutzer benötigt außerdem dieUSE CATALOG
-Berechtigung für den Katalog und dieUSE SCHEMA
-Berechtigung für das Schema.SELECT
Fragen Sie eine Tabelle oder Ansicht ab, rufen Sie eine benutzerdefinierte oder anonyme Funktion auf, oder wählen Sie
ANY FILE
aus. Der Benutzer muss über dieSELECT
-Berechtigung für die Tabelle, Sicht oder Funktion sowie über dieUSE CATALOG
-Berechtigung für den Katalog des Objekts und dieUSE SCHEMA
-Berechtigung für das Schema des Objekts verfügen.SET SHARE PERMISSION
In Delta Sharing gibt diese Berechtigung in Kombination mit
USE SHARE
undUSE RECIPIENT
(oder Empfängerbesitz) einem Anbieterbenutzer die Möglichkeit, einem Empfänger Zugriff auf eine Freigabe zu gewähren. In Kombination mitUSE SHARE
können Sie den Besitz einer Freigabe auf einen anderen Benutzer, eine Gruppe oder einen Dienstprinzipal übertragen.USE CATALOG
Erforderlich, aber nicht ausreichend, um auf Objekte in einem Katalog verweisen zu können. Der Prinzipal muss auch über Berechtigungen für die einzelnen sicherungsfähigen Objekte verfügen. Nicht erforderlich, damit eine Benutzerin oder ein Benutzer die Metadaten eines Objekts mithilfe der Berechtigungen
BROWSE
lesen kann.USE CONNECTION
Erforderlich, um Metadaten für eine Fremdverbindung oder alle Fremdverbindungen zu lesen, wenn sie im Metastore verwendet werden.
USE MARKETPLACE ASSETS
Standardmäßig für alle Unity Catalog-Metastores aktiviert. Gibt Benutzer*innen im Databricks Marketplace die Möglichkeit, sofortigen Zugriff zu erhalten oder Zugriff auf Datenprodukte anzufordern, die in einem Marketplace-Eintrag freigegeben sind. Außerdem kann ein Benutzer auf den schreibgeschützten Katalog zugreifen, der erstellt wird, wenn ein Anbieter ein Datenprodukt freigibt. Ohne diese Berechtigung benötigt der Benutzer die Berechtigungen
CREATE CATALOG
undUSE PROVIDER
oder die Metastore-Administratorrolle. Dadurch können Sie die Anzahl der Benutzer mit diesen mächtigen Berechtigungen begrenzen.USE PROVIDER
Gewährt in Delta Sharing einem Empfängerbenutzer schreibgeschützten Zugriff auf alle Anbieter in einem Empfänger-Metastore und deren Freigaben. In Kombination mit der
CREATE CATALOG
-Berechtigung ermöglicht diese Berechtigung einem Empfängerbenutzer, der kein Metastore-Administrator ist, das Einbinden einer Freigabe als Katalog. Dadurch können Sie die Anzahl der Benutzer mit der Metastore-Administratorrolle begrenzen, die viele Berechtigungen umfasst.USE RECIPIENT
Gewährt in Delta Sharing einem Anbieterbenutzer schreibgeschützten Zugriff auf alle Empfänger in einem Anbietermetastore und deren Freigaben. Dadurch kann ein Anbieterbenutzer, der kein Metastore-Administrator ist, Empfängerdetails, den Status der Empfängerauthentifizierung und die Liste der Freigaben anzeigen, die der Anbieter für den Empfänger freigegeben hat.
Im Databricks Marketplace können Anbieterbenutzer Auflistungen und Consumeranforderungen in der Anbieterkonsole anzeigen.
USE SCHEMA
Erforderlich, aber nicht ausreichend, um auf Objekte in einem Schema verweisen zu können. Der Prinzipal muss auch über Berechtigungen für die einzelnen sicherungsfähigen Objekte verfügen. Nicht erforderlich, damit eine Benutzerin oder ein Benutzer die Metadaten eines Objekts mithilfe der Berechtigungen
BROWSE
lesen kann.USE SHARE
Gewährt in Delta Sharing einem Anbieterbenutzer schreibgeschützten Zugriff auf alle Freigaben, die in einem Anbietermetastore definiert sind. Dadurch kann ein Anbieterbenutzer, der kein Metastore-Administrator ist, Freigaben auflisten und die Ressourcen (Tabellen und Notebooks) in einer Freigabe zusammen mit den Empfängern der Freigabe auflisten.
Im Databricks Marketplace können Anbieterbenutzer so Details zu den in einem Eintrag freigegebenen Daten anzeigen.
WRITE FILES
Direktes COPY INTO Dateien, die über die Speicheranmeldeinformationen oder den externen Speicherort gesteuert werden.
WRITE VOLUME
Beispiele
-- 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`;