Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Tips
Information om hur du läser Azure Databricks data med Microsoft Fabric finns i Microsoft Fabric med Azure Databricks.
Den här sidan beskriver hur funktioner för autentiseringsuppgifter i Unity Catalog stöder åtkomst till data i Azure Databricks från externa bearbetningsmotorer.
Distribution av autentiseringsuppgifter stöder externa system som ansluter till Unity Catalog med hjälp av Unity REST API:et och Apache Iceberg REST-katalogen. Se Access Databricks-tabeller från Delta-klienter och Access Databricks-data med hjälp av externa system.
Vad är autentiseringsuppgiftsförsäljning för Unity Catalog?
Utfärdande av autentiseringsuppgifter ger kortlivade autentiseringsuppgifter med hjälp av Unity Catalog REST-API. De beviljade autentiseringsuppgifterna ärver behörigheterna för den Azure Databricks huvudenhet som används för att konfigurera integrationen. Det finns två typer av autentiseringsuppgiftsdistribution:
- Varuautomater för tabellautentiseringsuppgifter ger åtkomst till data som registrerats i ditt Unity Catalog-metaarkiv.
- Path credential vending ger åtkomst till externa platser i ditt Unity Catalog-metaarkiv.
Krav
- Extern åtkomst måste konfigureras i metaarkivet med
EXTERNAL USE SCHEMAbeviljat till det begärande huvudkontot. Se Aktivera åtkomst till externa data i metaarkivet. - Arbetsytans URL måste vara tillgänglig för den begärande motorn, inklusive motorer bakom IP-åtkomstlistor eller Azure Private Link.
- Url:er för molnlagring måste vara tillgängliga via brandväggs- och nätverkskontroller.
Varuautomater för tabellautentiseringsuppgifter
Tabellautentiseringsuppgifter innehåller en kortlivad åtkomsttokensträng och url för molnlagringsplats som den externa motorn kan använda för att komma åt tabelldata och metadata från molnlagringsplatsen.
Åtkomsttyper som stöds
Varuautomater för tabellautentiseringsuppgifter stöder följande tabelltyper och åtgärder:
| Tabelltyp | Läs | Skriv | Create |
|---|---|---|---|
| Kontrollerat delta | Ja | Ja* | Ja* |
| Externt delta | Ja | Ja | Ja |
| Hanterat isberg | Ja | Ja | Ja |
| Utländska isberg | Ja | No | No |
| Delta med Iceberg läser | Ja | Yes** | No |
* Att skapa och skriva till Unity Catalog-hanterade tabeller från Delta-klienter är i offentlig förhandsversion.
** Efter att ha skrivit externt till en tabell med Iceberg-läsningar aktiverade från en Delta-klient, kör MSCK REPAIR TABLE för att generera Iceberg-metadata.
Anteckning
Vissa klienter stödjer tillgång till tabeller som backas upp av Delta Lake, medan andra kräver att du aktiverar Iceberg-läsningar på tabeller. Läs Delta Lake-tabeller med Iceberg-klienter.
Begära en tillfällig tabellautentiseringsuppgift för extern dataåtkomst
Stöd för distribution av autentiseringsuppgifter varierar beroende på extern klient. Där det stöds bör klienten automatiskt utnyttja utdelade autentiseringsuppgifter när en anslutning har konfigurerats.
Det här avsnittet innehåller ett exempel på hur du uttryckligen anropar API-slutpunkten för autentiseringsuppgifter. Vissa externa klienter kan kräva att du uttryckligen anger konfigurationer för åtkomst till data och metadata i molnobjektlagring som stöder dina Unity Catalog-tabeller. Du kan använda värden som returneras av en autentiseringsautomat för att konfigurera åtkomst.
Anteckning
Du kan hämta en lista över tabeller som stöder hantering av autentiseringsuppgifter genom att anropa ListTables-API:et med include_manifest_capabilities-alternativet aktiverat. Endast tabeller som är markerade HAS_DIRECT_EXTERNAL_ENGINE_READ_SUPPORT eller HAS_DIRECT_EXTERNAL_ENGINE_WRITE_SUPPORT är berättigade till referens i API:et för tillfälliga autentiseringsuppgifter. Se GET /api/2.1/unity-catalog/tables.
Följande curl exempel begär uttryckligen en tillfällig autentiseringsuppgift för extern dataåtkomst. Den här begäran måste slutföras av en arbetsyteansvarig med tillräckliga privilegier.
curl -X POST -H "Authorization: Bearer $OAUTH_TOKEN" \
https://<workspace-instance>/api/2.1/unity-catalog/temporary-table-credentials \
-d '{"table_id": "<string>", "operation": "<READ|READ_WRITE>"}'
Mer information finns i POST /api/2.1/unity-catalog/temporary-table-credentials i referensen för Azure Databricks REST API.
Begränsningar
Följande begränsningar finns:
- Alla externa klienter stöder inte utdelning av autentiseringsuppgifter, och stödet kan variera beroende på vilken underliggande molnobjektlagring som används.
- Delta Lake-läsarklienter kan bara läsa tabeller som backas upp av Delta Lake och måste ha stöd för alla aktiverade läsar- eller skrivprotokoll som är aktiverade i tabellen. Se Delta Lake-funktionskompatibilitet och protokoll.
- Externa tabeller som inte använder Delta Lake ger inga transaktionsgarantier.
- Följande tabelltyper eller tabeller med aktiverade funktioner stöds inte:
- Tabeller med radfilter eller kolumnmasker.
- Tabeller som delas med OpenSharing.
- Visningar.
- Materialiserade vyer.
- Lakeflow-pipeliners strömningstabeller
- Onlinetabeller.
- AI Search-index
- Uppdatering av autentiseringsuppgifter stöds inte på Iceberg 1.9.0. Använd den senaste Iceberg-versionen för uppdatering av autentiseringsuppgifter.
Utdelning av autentiseringsuppgifter via sökväg
Utfärdade autentiseringsuppgifter tillåter direkt åtkomst till molnlagringsplatsen, som är begränsad till relevant sökväg. De är giltiga under en begränsad tid och ger inte bredare åtkomst utöver den definierade platsen eller tabellen.
Be om en tillfällig vägbehörighet för extern dataåtkomst
Stöd för distribution av autentiseringsuppgifter varierar beroende på extern klient. Där det stöds bör klienten automatiskt utnyttja utdelade autentiseringsuppgifter när en anslutning har konfigurerats.
Det här avsnittet innehåller ett exempel på hur du uttryckligen anropar API-slutpunkten för autentiseringsuppgifter. Vissa externa klienter kan kräva att du uttryckligen anger konfigurationer för åtkomst till data och metadata i molnobjektlagring som stöder dina Unity Catalog-tabeller. Du kan använda värden som returneras av en autentiseringsautomat för att konfigurera åtkomst.
Följande curl exempel begär uttryckligen en tillfällig autentiseringsuppgift för extern dataåtkomst. Den här begäran måste slutföras av en arbetsyteansvarig med tillräckliga privilegier.
curl -X POST -H "Authorization: Bearer $OAUTH_TOKEN" \
https://<workspace-instance>/api/2.1/unity-catalog/temporary-path-credentials \
-d '{"url": "<string>", "operation": "<PATH_READ|PATH_READ_WRITE|PATH_CREATE_TABLE>"}'
Mer information finns i Generera en tillfällig sökvägsautentisering i Azure Databricks REST API-referens.
Utfärdande av autentiseringsuppgifter för volymer
Viktig
Den här funktionen finns i offentlig förhandsversion.
Utfärdande av autentiseringsuppgifter för volymer gör det möjligt för externa motorer att få åtkomst till filer som lagras i Unity Catalog-volymer med tillfälliga, avgränsade autentiseringsuppgifter. Den begärande användaren måste ha EXTERNAL USE SCHEMA för schemat som innehåller volymen, samt READ VOLUME för läsåtkomst eller READ VOLUME och WRITE VOLUME för skrivåtkomst. Se Vad är Unity Catalog-volymer?.
Unity Catalog validerar behörigheter och returnerar kortlivade, begränsade autentiseringsuppgifter för molnlagring som är knutna till volymens lagringssökväg. Autentiseringsuppgifterna upphör att gälla automatiskt och beviljar inte åtkomst utöver den angivna volymen.
Krav
- Extern åtkomst måste vara aktiverad i metaarkivet. Se Aktivera åtkomst till externa data i metaarkivet.
- Den begärande användaren måste ha
EXTERNAL USE SCHEMAför schemat som innehåller volymen, samtREAD VOLUMEför läsåtkomst ellerREAD VOLUMEochWRITE VOLUMEför skrivåtkomst. - Den externa motorn måste kunna nå arbetsytans URL.
- Url:er för molnlagring måste vara tillgängliga via brandväggs- och nätverkskontroller.
Begära en tillfällig volymautentiseringsuppgift för extern dataåtkomst
Följande curl exempel begär uttryckligen en tillfällig autentiseringsuppgift för extern dataåtkomst.
curl -X POST -H "Authorization: Bearer $OAUTH_TOKEN" \
https://<workspace-instance>/api/2.0/unity-catalog/temporary-volume-credentials \
-d '{"volume_id": "<volume-id>", "operation": "<READ_VOLUME|WRITE_VOLUME>"}'
Eller använd Azure Databricks Python SDK:
from databricks.sdk.service.catalog import VolumeOperation
creds = w.temporary_volume_credentials.generate_temporary_volume_credentials(
volume_id=volume_id,
operation=VolumeOperation.READ_VOLUME,
)
Mer information finns i POST /api/2.0/unity-catalog/temporary-volume-credentials i referensen för Azure Databricks REST API.
Begränsningar
- Hanterade volymer stöds endast för skrivskyddad åtkomst. Externa volymer stöder både läs- och skrivåtkomst.