Freigeben über


Aktivieren des externen Datenzugriffs auf Unity Catalog

Azure Databricks bietet Zugriff auf Unity Catalog-Tabellen mithilfe der Unity-REST-API und des Iceberg-REST-Katalogs.

Ein Metastore-Administrator muss den externen Datenzugriff für jeden Metastore aktivieren, auf den Sie extern zugreifen müssen. Der Benutzer oder Dienstprinzipal, der die Verbindung konfiguriert, muss über die EXTERNAL USE SCHEMA Berechtigungen für jedes Schema verfügen, das Tabellen enthält, die Sie extern lesen müssen.

Die Unity-REST-API unterstützt direkte Lesevorgänge für Delta-Tabellen, während der Iceberg-REST-Katalog Lesevorgänge für Tabellen unterstützt, die für Iceberg-Lesevorgänge aktiviert sind. Siehe Zugriff auf Databricks-Daten mithilfe externer Systeme.

Aktivieren des externen Datenzugriffs im Metastore

Damit externe Engines auf Daten in einem Metastore zugreifen können, muss ein Metastore-Administrator den externen Datenzugriff für den Metastore aktivieren. Diese Option ist standardmäßig deaktiviert, um nicht autorisierten externen Zugriff zu verhindern.

Gehen Sie wie folgt vor, um den externen Datenzugriff zu aktivieren:

  1. Klicken Sie in einem Azure Databricks-Arbeitsbereich, der dem Metastore zugeordnet ist, auf KatalogsymbolKatalog.
  2. Klicken Sie oben im Bereich Katalog auf das Zahnradsymbol Zahnradsymbol, und wählen Sie Metastore aus.
  3. Aktivieren Sie auf der Registerkarte Details die Option Externer Datenzugriff.

Hinweis

Diese Optionen werden nur für Benutzer mit entsprechenden Berechtigungen angezeigt. Wenn diese Optionen nicht angezeigt werden, verfügen Sie nicht über Berechtigungen zum Aktivieren des externen Datenzugriffs für einen Metastore.

Zuweisen eines PrinzipalsEXTERNAL USE SCHEMA

Externe Clients, die eine Verbindung mit Azure Databricks herstellen, benötigen eine Genehmigung von einem ausreichend privilegierten Prinzipal.

Azure Databricks unterstützt OAuth und persönliche Zugriffstoken (PAT) für die Authentifizierung. Siehe Autorisierung des Zugriffs auf Azure Databricks-Ressourcen.

Der Prinzipal, der die temporären Anmeldeinformationen anfordert, muss Folgendes haben:

  • Die EXTERNAL USE SCHEMA-Berechtigung auf das enthaltende Schema oder dessen übergeordneten Katalog

    Diese Berechtigung muss immer explizit gewährt werden. Nur der Besitzer des übergeordneten Katalogs kann es erteilen. Um versehentliche Exfiltration zu vermeiden, enthält ALL PRIVILEGES nicht das EXTERNAL USE SCHEMA Privileg, und Schemabesitzer verfügen nicht standardmäßig über dieses Privileg.

  • SELECT-Berechtigung für die Tabelle, USE CATALOG für den übergeordneten Katalog und USE SCHEMA für das übergeordnete Schema.

Die folgende Beispielsyntax veranschaulicht die Gewährung von EXTERNAL USE SCHEMA für einen Benutzer:

GRANT EXTERNAL USE SCHEMA ON SCHEMA catalog_name.schema_name TO `user@company.com`

Wenn der Benutzer über die Berechtigungen zum Lesen aller gewünschten Tabellen im Schema verfügt, sind keine zusätzlichen Berechtigungen erforderlich. Wenn Sie zusätzliche Berechtigungen zum Lesen von Tabellen zuweisen müssen, lesen Sie Unity Catalog-Berechtigungen und sicherungsfähige Objekte.