Udostępnij za pośrednictwem


Udostępnianie poświadczeń w katalogu Unity na potrzeby dostępu do zewnętrznych systemów

Ważny

Ta funkcja jest dostępna w publicznej wersji zapoznawczej.

Napiwek

Aby uzyskać informacje na temat sposobu odczytywania danych z usługi Azure Databricks przy użyciu usługi Microsoft Fabric, zobacz Używanie usługi Microsoft Fabric do odczytywania danych zarejestrowanych w katalogu Unity.

W tym artykule opisano, jak funkcjonalność udostępniania poświadczeń w katalogu Unity wspiera dostęp do danych w usłudze Azure Databricks z zewnętrznych silników przetwarzania.

Sprzedaż poświadczeń obsługuje systemy zewnętrzne łączące się z katalogiem Unity przy użyciu interfejsu API REST katalogu Unity i katalogu REST Iceberg. Zobacz , jak odczytywać tabele Databricks z klientów Delta, i , jak uzyskiwać dostęp do danych Databricks przy użyciu systemów zewnętrznych.

Co to jest dystrybucja poświadczeń w katalogu Unity?

Przydzielanie poświadczeń przyznaje krótkotrwałe poświadczenia za pomocą REST API Unity Catalog. Poświadczenia przyznane dziedziczą uprawnienia podmiotu Azure Databricks, używanego do konfigurowania integracji. Te poświadczenia zapewniają klientom zewnętrznym dostęp do danych zarejestrowanych w magazynie Unity Catalog.

Notatka

Obsługa wydawania poświadczeń Unity Catalog wspiera dostęp tylko do odczytu do danych Unity Catalog. Niektórzy klienci obsługują dostęp do tabel opartych na Delta Lake, podczas gdy inni wymagają włączenia obsługi odczytów w systemie Iceberg (UniForm) na tabelach. Zobacz Odczytywanie tabel delty przy użyciu klientów góry lodowej.

Aby można było przyznać tymczasowe poświadczenia, podmiot Azure Databricks (użytkownik, grupa lub podmiot usługi), który wysyła żądanie, musi mieć uprawnienia EXTERNAL USE SCHEMA w schemacie zawierającym tabelę, do której potrzebuje dostępu z zewnętrznego silnika. Magazyn metadanych katalogu Unity zawierający schemat musi być również wyraźnie włączony dla dostępu zewnętrznego. Zobacz Włączanie dostępu danych zewnętrznych do katalogu aparatu Unity.

Poświadczenia obejmują krótkotrwały token dostępu oraz adres URL lokalizacji magazynu w chmurze, które zewnętrzny silnik może wykorzystać do uzyskiwania dostępu do danych tabeli i metadanych w tym magazynie.

Wymagania

  • Należy skonfigurować dostęp zewnętrzny w metastore i udzielić EXTERNAL USE SCHEMA pryncypałowi konfigurującemu połączenie. Zobacz Włączanie dostępu danych zewnętrznych do katalogu aparatu Unity.
  • Aby uzyskać dostęp do obszaru roboczego usługi Azure Databricks przy użyciu interfejsów Open API Unity Catalog lub interfejsów API REST Iceberg, adres URL obszaru roboczego musi być dostępny dla silnika wykonującego żądanie. Obejmuje to obszary robocze korzystające z list dostępu IP lub usługi Azure Private Link.
  • Aby uzyskać dostęp do bazowej lokalizacji magazynu chmurowego dla obiektów danych zarejestrowanych w Unity Catalog, adresy URL magazynu generowane przez interfejs API tymczasowych poświadczeń Unity Catalog muszą być dostępne dla silnika wykonującego żądanie. Oznacza to, że silnik musi być dozwolony na zaporze sieciowej i listach kontroli dostępu dla podstawowych kont magazynu w chmurze.

Żądanie tymczasowego poświadczenia dla dostępu do danych zewnętrznych

Obsługa wydawania poświadczeń różni się w zależności od klienta zewnętrznego. Jeśli jest to obsługiwane, klient powinien automatycznie korzystać z poświadczeń vended po skonfigurowaniu połączenia.

Ta sekcja zawiera przykład jawnego wywoływania punktu końcowego interfejsu API sprzedaży poświadczeń. Niektórzy klienci zewnętrzni mogą wymagać jawnego ustawienia konfiguracji w celu uzyskania dostępu do danych i metadanych w magazynie obiektów w chmurze, które wspierają tabele Unity Catalog. Aby skonfigurować dostęp, możesz użyć wartości zwracanych przez dystrybuowanie poświadczeń.

Notatka

Listę tabel, które obsługują udostępnianie/pozyskiwanie poświadczeń, można pobrać, wywołując interfejs API ListTables z włączoną opcją include_manifest_capabilities. Tylko tabele oznaczone jako HAS_DIRECT_EXTERNAL_ENGINE_READ_SUPPORT lub HAS_DIRECT_EXTERNAL_ENGINE_WRITE_SUPPORT kwalifikują się do wykorzystania w interfejsie API temporary-table-credentials. Zobacz GET /api/2.1/unity-catalog/tables.

Poniższy curl przykład jawnie żąda tymczasowego poświadczenia dostępu do danych zewnętrznych. To żądanie musi zostać wykonane przez wystarczająco uprzywilejowanego podmiotu głównego obszaru roboczego.

curl -X POST -H "Authentication: Bearer $OAUTH_TOKEN" \
https://<workspace-instance>/api/2.1/unity-catalog/temporary-table-credentials \
-d '{"table_id": "<string>", "operation_name": "<READ|READ_WRITE>"}'

Aby uzyskać szczegółowe informacje, zobacz POST /api/2.1/unity-catalog/temporary-table-credentials w dokumentacji interfejsu API REST usługi Azure Databricks.

Ograniczenia

Istnieją następujące ograniczenia:

  • Nie wszyscy klienci zewnętrzni obsługują wydawanie poświadczeń, a poziom wsparcia może się różnić w zależności od bazowego magazynu obiektów w chmurze.
  • Obsługiwane są tylko tabele zarządzane przez Unity Catalog i zewnętrzne tabele Unity Catalog oparte na Delta Lake.
  • Następujące typy tabel lub tabele z włączonymi funkcjami nie są obsługiwane:
    • Tabele z filtrami wierszy lub maskami kolumn.
    • Tabele udostępniane za pomocą Delta Sharing.
    • Tabele federacyjne Lakehouse (tabele zewnętrzne).
    • Widoki.
    • Zmaterializowane widoki.
    • Tabele strumieniowe Delta Live Tables.
    • Tabele online.
    • Indeksy wyszukiwania wektorowego.