Share via


Berechtigungen und sicherungsfähige Objekte im Hive-Metastore

Gilt für:durch Häkchen mit „Ja“ markiert Databricks SQL durch Häkchen mit „Ja“ markiert Databricks Runtime

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 den Hive-Legacymetastore beschrieben. Wenn Sie Unity Catalog verwenden, finden Sie weitere Informationen unter Berechtigungen und sicherungsfähige Objekte in Unity Catalog.

Sicherungsfähige Objekte im Hive-Metastore

Ein sicherungsfähiges Objekt ist ein im Metastore definiertes Objekt, für das einem Prinzipal Berechtigungen erteilt werden können.

Damit Sie Berechtigungen für ein Objekt verwalten können, müssen Sie dessen Besitzer oder Administrator sein.

Syntax

  securable_object
    { ANY FILE |
      CATALOG [ catalog_name ] |
      { SCHEMA | DATABASE } schema_name |
      FUNCTION function_name |
      [ TABLE ] table_name |
      VIEW view_name
      }

Parameter

  • ANY FILE

    Steuert den Zugriff auf das zugrunde liegende Dateisystem.

  • CATALOGcatalog_name

    Steuert den Zugriff auf den gesamten Datenkatalog.

  • { SCHEMA | DATABASE }schema_name

    Steuert den Zugriff auf ein Schema.

  • FUNCTIONfunction_name

    Steuert den Zugriff auf eine benannte Funktion.

  • [ TABLE ]table_name

    Steuert den Zugriff auf eine verwaltete oder externe Tabelle.

  • VIEWview_name

    Steuert den Zugriff auf SQL-Sichten.

Vererbungsmodell

Sicherungsfähige Objekte im Hive-Metastore sind hierarchisch, und Berechtigungen werden abwärts vererbt. Dies bedeutet, dass durch das Erteilen oder Verweigern einer Berechtigung für CATALOG diese für alle Schemas im Katalog automatisch gewährt oder verweigert werden. Ebenso werden die einem Schemaobjekt gewährten Berechtigungen von allen Objekten in diesem Schema geerbt. Dieses Muster gilt für alle sicherungsfähigen Objekte.

Werden einem Benutzer die Berechtigungen für eine Tabelle verweigert, kann er die Tabelle nicht anzeigen, indem er versucht, alle Tabellen im Schema aufzulisten. Werden einem Benutzer Berechtigungen für ein Schema verweigert, kann er nicht sehen, dass das Schema vorhanden ist, indem er versucht, alle Schemas im Katalog aufzulisten.

Berechtigungstypen

Der folgenden Tabelle können Sie entnehmen, welche Berechtigungen welchen sicherungsfähigen Objekten zugeordnet sind.

Berechtigungstyp ANONYMOUS FUNCTION ANY FILE CATALOG SCHEMA FUNCTION TABLE VIEW
CREATE Ja Ja
MODIFY Ja Ja Ja Ja
READ_METADATA Ja Ja Ja Ja
SELECT Ja Ja Ja Ja Ja Ja Ja
USAGE Ja Ja
  • ALL PRIVILEGES

    Wird zum Gewähren oder Widerrufen aller Berechtigungen verwendet, die für die sicherungsfähigen Elemente und deren untergeordnete Objekte gelten, ohne sie explizit anzugeben. Dies wird zum Zeitpunkt der Berechtigungsprüfungen auf alle verfügbaren Berechtigungen erweitert.

  • CREATE

    Erstellen Sie Objekte innerhalb des Katalogs oder Schemas.

  • MODIFY

    Umfasst die Anweisungen COPY INTO, UPDATE, DELETE, INSERT und MERGE INTO für die Tabelle.

    Wenn es sich bei dem sicherungsfähigen Objekt um den hive_metastore oder ein darin enthaltenes Schema handelt, wird durch das Erteilen von MODIFY die Berechtigung MODIFY für alle aktuellen und zukünftigen Tabellen und Ansichten innerhalb des sicherungsfähigen Objekts erteilt.

  • READ_METADATA

    Sie können das sicherungsfähige Objekt in SHOW ermitteln und das Objekt in DESCRIBE abfragen.

    Wenn es sich bei dem sicherungsfähigen Objekt um den hive_metastore-Katalog oder ein darin enthaltenes Schema handelt, wird durch das Erteilen von READ_METADATA die Berechtigung READ_METADATA für alle aktuellen und zukünftigen Tabellen und Ansichten innerhalb des sicherungsfähigen Objekts erteilt.

  • READ FILES

    Sie können Dateien direkt über die Speicheranmeldeinformationen oder den externen Speicherort abfragen.

  • 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 die Berechtigung SELECT für die Tabelle, Ansicht oder Funktion sowie über die Berechtigung USAGE für das Schema und den Katalog des Objekts verfügen.

    Wenn es sich bei dem sicherungsfähigen Objekt um den hive_metastore oder ein darin enthaltenes Schema handelt, wird durch das Erteilen von SELECT die Berechtigung SELECT für alle aktuellen und zukünftigen Tabellen und Ansichten innerhalb des sicherungsfähigen Objekts erteilt.

  • USAGE

    Erforderlich, aber nicht ausreichend, um auf Objekte in einem Katalog oder Schema verweisen zu können. Der Prinzipal muss auch über Berechtigungen für die einzelnen sicherungsfähigen Objekte verfügen.

  • WRITE FILES

    Direktes COPY INTO Dateien, die über die Speicheranmeldeinformationen oder den externen Speicherort gesteuert werden.

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 USAGE ON SCHEMA some_schema FROM `alf@melmak.et`;