Tillåtlista bibliotek och init-skript vid delad beräkning
I Databricks Runtime 13.3 LTS och senare kan du lägga till bibliotek och init-skript i allowlist
i Unity Catalog. Detta gör det möjligt för användare att utnyttja dessa artefakter vid beräkning som konfigurerats med läget för delad åtkomst.
Du kan tillåtalistning av en katalog eller filsökväg innan katalogen eller filen finns. Se Ladda upp filer till en Unity Catalog-volym.
Kommentar
Du måste vara administratör för metaarkivet MANAGE ALLOWLIST
eller ha behörighet att ändra listan över tillåtna. Se HANTERA ALLOWLIST.
Viktigt!
Bibliotek som används som JDBC-drivrutiner eller anpassade Spark-datakällor på Unity Catalog-aktiverad delad beräkning kräver ANY FILE
behörigheter.
Vissa installerade bibliotek lagrar data för alla användare i en gemensam temp-katalog. Dessa bibliotek kan äventyra användarisoleringen.
Så här lägger du till objekt i listan över tillåtna objekt
Du kan lägga till objekt i allowlist
med Catalog Explorer eller REST API-.
Om du vill öppna dialogrutan för att lägga till objekt i listan över tillåtna objekt i Catalog Explorer gör du följande:
- På din Azure Databricks-arbetsyta klickar du på ikonen
Catalog.
- Klicka här om du
vill öppna information om metaarkivet och behörighetsgränssnittet.
- Select Tillåtna JARs/init-skript.
- Klicka på Lägg till.
Viktigt!
Det här alternativet visas endast för tillräckligt privilegierade användare. Om du inte kan komma åt användargränssnittet för tillåtna listor kontaktar du metaarkivadministratören för att få hjälp med att tillåtalistning av bibliotek och init-skript.
Lägga till ett init-skript i listan över tillåtna
Slutför följande steg i dialogrutan allowlist för att lägga till ett init-skript i listan över tillåtna:
- För typselectInit-skriptet.
- För källtypselectVolym eller objektlagringsprotokollet.
- Ange källsökvägen som ska läggas till i listan över tillåtna. Se Hur tillämpas behörigheter för sökvägar i listan över tillåtna?.
Lägga till en JAR i listan över tillåtna
Slutför följande steg i dialogrutan allowlist för att lägga till en JAR i listan över tillåtna:
- För typselectJAR.
- För källtypselectVolym eller objektlagringsprotokollet.
- Ange källsökvägen som ska läggas till i listan över tillåtna. Se Hur tillämpas behörigheter för sökvägar i listan över tillåtna?.
Lägg till Maven-koordinater i listan över tillåtna
Slutför följande steg i dialogrutan allowlist för att lägga till Maven-koordinater i listan över tillåtna:
- För typselectMaven.
- För källtyp, selectkoordinater.
- Ange koordinater i följande format:
groudId:artifactId:version
.- Du kan inkludera alla versioner av ett bibliotek genom att tillåta följande format:
groudId:artifactId
. - Du kan inkludera alla artefakter i en grupp genom att tillåtalistning av följande format:
groupId
.
- Du kan inkludera alla versioner av ett bibliotek genom att tillåta följande format:
Hur tillämpas behörigheter på sökvägar i listan över tillåtna?
Du kan använda listan över tillåtna för att grant åtkomst till JAR-skript eller init-skript som lagras i Unity Catalogvolumes och objektlagring. Om du lägger till en sökväg för en katalog i stället för en fil sprids behörigheter för tillåtna listor till inneslutna filer och kataloger.
Prefixmatchning används för alla artefakter som lagras i Unity Catalogvolumes eller objektlagring. Om du vill förhindra prefixmatchning på en viss katalognivå inkluderar du ett avslutande snedstreck (/
). Till exempel /Volumes/prod-libraries/
utför inte prefixmatchning för filer som är prefix med prod-libraries
. I stället läggs alla filer och kataloger inom /Volumes/prod-libraries/
till i listan över tillåtna filer.
Du kan definiera behörigheter på följande nivåer:
- Bassökvägen för volymen eller lagringscontainern.
- En katalog kapslad på valfritt djup från bassökvägen.
- En enda fil.
Att lägga till en sökväg till listan över tillåtna innebär att sökvägen kan användas för init-skript eller JAR-installation. Azure Databricks söker fortfarande efter behörigheter för att komma åt data på den angivna platsen.
Det huvudnamn som används måste ha READ VOLUME
behörigheter på den angivna volymen. Se SELECT.
I åtkomstläge för en användare används identiteten för det tilldelade huvudnamnet (en användare eller tjänstens huvudnamn).
I läget för delad åtkomst:
- Bibliotek använder biblioteksinstallationsprogrammets identitet.
- Init-skript använder klusterägarens identitet.
Kommentar
Läget för delad åtkomst utan isolering stöder inte volumes, men använder samma identitetstilldelning som läget för delad åtkomst.
Databricks rekommenderar att du konfigurerar alla objektlagringsbehörigheter relaterade till init-skript och bibliotek med skrivskyddade behörigheter. Användare med skrivbehörighet på dessa platser kan eventuellt ändra kod i biblioteksfiler eller init-skript.
Databricks rekommenderar att du använder Microsoft Entra ID-tjänstens huvudnamn för att hantera åtkomst till JAR eller init-skript som lagras i Azure Data Lake Storage Gen2. Använd följande länkade dokumentation för att slutföra den här installationen:
Skapa ett tjänstens huvudkonto med läs- och list behörigheter för de specifika blobarna. Se Åtkomstlagring med hjälp av tjänstens huvudnamn och Microsoft Entra-ID (Azure Active Directory).
Spara dina credentials med hjälp av hemligheter. Se Hantera hemligheter.
Set egenskaperna i Spark-konfigurationen och miljövariablerna när du skapar ett kluster, som i följande exempel:
Spark-konfiguration:
spark.hadoop.fs.azure.account.auth.type.<storage-account>.dfs.core.windows.net OAuth spark.hadoop.fs.azure.account.oauth.provider.type.<storage-account>.dfs.core.windows.net org.apache.hadoop.fs.azurebfs.oauth2.ClientCredsTokenProvider spark.hadoop.fs.azure.account.oauth2.client.id.<storage-account>.dfs.core.windows.net <application-id> spark.hadoop.fs.azure.account.oauth2.client.secret.<storage-account>.dfs.core.windows.net {{secrets/<secret-scope>/<service-credential-key>}} spark.hadoop.fs.azure.account.oauth2.client.endpoint.<storage-account>.dfs.core.windows.net https://login.microsoftonline.com/<tenant-id>/oauth2/token
Miljövariabler:
SERVICE_CREDENTIAL={{secrets/<secret-scope>/<service-credential-key>}}
(Valfritt) Omstrukturera init-skript med azcopy eller Azure CLI.
Du kan referera till miljövariabler set under klusterkonfigurationen i dina init-skript för att skicka credentials som lagras som hemligheter för validering.
Kommentar
Tillåtlistbehörigheter för JAR:er och init-skript hanteras separat. Om du använder samma plats för att lagra båda typerna av objekt måste du lägga till platsen i listan över tillåtna objekt för varje objekt.