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-Metaspeicher verwenden, lesen Sie "Berechtigungen" und sicherungsfähige Objekte im Hive-Metaspeicher.
Ausführliche Informationen zum Verwalten von Berechtigungen im Unity-Katalog finden Sie unter Verwalten von Berechtigungen im Unity-Katalog.
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-Katalogmetastore während der öffentlichen Vorschau (vor dem 25. August 2022) erstellt haben, verwenden Sie möglicherweise ein früheres Berechtigungsmodell, welches das aktuelle Vererbungsmodell nicht unterstützt. Sie können ein Upgrade auf das Berechtigungsmodell, Version 1.0, durchführen, um die Berechtigungsvererbung zu erhalten. Siehe Upgrade auf Berechtigungsvererbung.
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. Eine vollständige Liste der sicherungsfähigen Unity-Katalog-Objekte und der berechtigungen, die ihnen gewährt werden können, finden Sie unter Unity Catalog-Berechtigungen und sicherungsfähige Objekte.
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 |
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
}
Sie können auch SERVER
anstelle von CONNECTION
und DATABASE
anstelle von SCHEMA
angeben.
Parameter
CATALOG
catalog_nameSteuert den Zugriff auf den gesamten Datenkatalog.
CLEAN ROOM
clean_room_nameSteuert den Zugriff auf einen Reinraum.
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 oder ein registriertes MLflow-Modell.
MATERIALIZED VIEW
view_nameSteuert 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.
SCHEMA
schema_nameSteuert den Zugriff auf ein Schema.
[ STORAGE | SERVICE ] CREDENTIAL
credential_nameSteuert den Zugriff auf anmeldeinformationen.
Die Schlüsselwörter
STORAGE
undSERVICE
( Databricks Runtime 15.4 und höher) sind optional.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.
Berechtigungstypen
Eine Liste der Berechtigungstypen finden Sie unter Unity Catalog-Berechtigungen und sicherungsfähige Objekte.
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`;