Dela via


Skapa en lagringsautentiseringsuppgift för anslutning till Azure Data Lake Storage Gen2

Den här artikeln beskriver hur du skapar en lagringsautentiseringsuppgift i Unity Catalog för att ansluta till Azure Data Lake Storage Gen2.

För att hantera åtkomsten till den underliggande molnlagringen som innehåller tabeller och volymer använder Unity Catalog följande objekttyper:

  • Lagringsautentiseringsuppgifter kapslar in långsiktiga molnautentiseringsuppgifter som ger tillgång till molnlagring.
  • Externa platser innehåller en referens till en lagringsautentiseringsuppgift och en molnlagringssökväg.

Mer information finns i Hantera åtkomst till molnlagring med hjälp av Unity Catalog.

Kommentar

Om du vill använda Unity Catalog för att styra åtkomsten till en extern tjänst i stället för molnlagring läser du Hantera åtkomst till externa molntjänster med autentiseringsuppgifter för tjänsten.

Unity Catalog har stöd för tre molnlagringsalternativ för Azure Databricks: Azure Data Lake Storage Gen2-containrar, Cloudflare R2-bucketar och DBFS Root. Cloudflare R2 är främst avsett för användningsfall för deltadelning där du vill undvika avgifter för utgående data. Azure Data Lake Storage Gen2 är lämpligt för de flesta andra användningsfall. Den här artikeln fokuserar på att skapa autentiseringsuppgifter för lagring för Azure Data Lake Storage Gen2-containrar. För Cloudflare R2, se Skapa en lagringsautentiseringsuppgift för anslutning till Cloudflare R2.

DBFS Root används för att kontrollera åtkomsten till din DBFS root. Även om Databricks rekommenderar att du inte lagrar data i DBFS-rotlagringen kan din arbetsyta göra det på grund av äldre metoder. För DBFS-rot, se Skapa en extern plats för data i DBFS-rot.

Om du vill skapa en lagringsautentiseringsuppgift för åtkomst till en Azure Data Lake Storage Gen2-container skapar du en Azure Databricks-åtkomstanslutning som refererar till en Hanterad Azure-identitet och tilldelar den behörigheter för lagringscontainern. Sedan refererar du till anslutningsappen i definitionen för lagringsautentiseringsuppgifter.

Krav

I Azure Databricks:

  • Azure Databricks-arbetsytan aktiverad för Unity Catalog.
  • CREATE STORAGE CREDENTIAL behörighet på Unity Catalog-metaarkivet som är kopplat till arbetsytan. Kontoadministratörer och metaarkivadministratörer har den här behörigheten som standard.

I din Azure-klientorganisation:

  • En Azure Data Lake Storage Gen2-lagringscontainer. För att undvika utgående avgifter bör detta finnas i samma region som den arbetsyta som du vill komma åt data från.

    Azure Data Lake Storage Gen2-lagringskontot måste ha ett hierarkiskt namnområde.

  • Deltagare eller ägare av en Azure-resursgrupp.

  • Ägare eller en användare med Azure RBAC-rollen Administratör för användaråtkomst på lagringskontot.

Skapa en lagringsautentiseringsuppgift med hjälp av en hanterad identitet

Du kan använda antingen en hanterad Azure-identitet eller ett huvudnamn för tjänsten som den identitet som ger åtkomst till din lagringscontainer. Hanterade identiteter rekommenderas starkt. De har fördelen att ge Unity Catalog åtkomst till lagringskonton som skyddas av nätverksregler, vilket inte är möjligt med hjälp av tjänstens huvudnamn, och de tar bort behovet av att hantera och rotera hemligheter. Om du vill använda en serviceprincipal, se Skapa hanterad lagring i Unity Catalog med hjälp av en serviceprincipal (legacy).

  1. I Azure-portalen skapar du en Azure Databricks-åtkomstanslutning och tilldelar den behörigheter för den lagringscontainer som du vill komma åt med hjälp av anvisningarna i Konfigurera en hanterad identitet för Unity Catalog.

    En Azure Databricks-åtkomstanslutning är en Azure-resurs från första part som gör att du kan ansluta hanterade identiteter till ett Azure Databricks-konto. Du måste ha rollen Deltagare eller högre för åtkomstanslutningsresursen i Azure för att lägga till lagringsautentiseringsuppgifterna.

    Anteckna åtkomstanslutningsappens resurs-ID.

  2. Logga in på din Unity Catalog-aktiverade Azure Databricks-arbetsyta som en användare som har CREATE STORAGE CREDENTIAL behörighet.

    Både administratörsrollerna för metaarkivet och kontoadministratören innehåller den här behörigheten.

  3. Klicka på katalogikonenCatalog.

  4. På sidan Snabbåtkomst klickar du på knappen Externa data >, går till fliken autentiseringsuppgifter och väljer Skapa autentiseringsuppgifter.

  5. Välj Lagringsautentiseringsuppgifter.

  6. Välj en autentiseringstyp för Azure Managed Identity.

  7. Ange ett namn på autentiseringsuppgifterna och ange åtkomstanslutningsappens resurs-ID i formatet:

    /subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.Databricks/accessConnectors/<connector-name>
    
  8. (Valfritt) Om du har skapat åtkomstanslutningsappen med hjälp av en användartilldelad hanterad identitet anger du resurs-ID för den hanterade identiteten i fältet Användartilldelad hanterad identitets-ID i formatet:

    /subscriptions/<subscription-id>/resourceGroups/<resource-group-name>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<managed-identity-name>
    
  9. (Valfritt) Om du vill att användarna ska ha skrivskyddad åtkomst till de externa platser som använder de här lagringsautentiseringsuppgifterna väljer du Skrivskyddad. Mer information finns i Markera en lagringsautentiseringsuppgift som skrivskyddad.

  10. Klicka på Skapa.

  11. (Valfritt) Binda lagringsautentiseringsuppgifterna till specifika arbetsytor.

    Som standard kan alla privilegierade användare använda lagringsautentiseringsuppgifterna på alla arbetsytor som är anslutna till metaarkivet. Om du bara vill tillåta åtkomst från specifika arbetsytor går du till fliken Arbetsytor och tilldelar arbetsytor. Se (Valfritt) Tilldela en lagringsautentiseringsuppgift till specifika arbetsytor.

  12. Skapa en extern plats som refererar till den här lagringsautentiseringsuppgiften.

(Valfritt) Tilldela en lagringsautentiseringsuppgift till specifika arbetsytor

Viktigt!

Den här funktionen finns som allmänt tillgänglig förhandsversion.

Som standard är en lagringsautentiseringsuppgift tillgänglig från alla arbetsytor i metaarkivet. Det innebär att om en användare har beviljats behörighet (till exempel ) för lagringsautentiseringsuppgifterna kan de utöva den behörigheten från alla arbetsytor som CREATE EXTERNAL LOCATIONär kopplade till metaarkivet. Om du använder arbetsytor för att isolera åtkomst till användardata kanske du endast vill tillåta åtkomst till lagringsautentiseringsuppgifter från specifika arbetsytor. Den här funktionen kallas för bindning av arbetsytor eller isolering av lagringsautentiseringsuppgifter.

Ett vanligt användningsfall för att binda en lagringsautentiseringsuppgift till specifika arbetsytor är scenariot där en molnadministratör konfigurerar en lagringsautentiseringsuppgift med hjälp av autentiseringsuppgifter för ett produktionsmolnkonto, och du vill se till att Azure Databricks-användare använder den här autentiseringsuppgiften för att endast skapa externa platser på produktionsarbetsytan.

Mer information om bindning av arbetsytor finns i (valfritt) Tilldela en extern plats till specifika arbetsytor och Begränsa katalogåtkomst till specifika arbetsytor.

Kommentar

Bindningar för arbetsytor refereras till när behörigheter mot lagringsautentiseringsuppgifter används. Om en användare till exempel skapar en extern plats med hjälp av en lagringsautentiseringsuppgift kontrolleras arbetsytebindningen för lagringsautentiseringsuppgifterna endast när den externa platsen skapas. När den externa platsen har skapats fungerar den oberoende av de arbetsytebindningar som konfigurerats för lagringsautentiseringsuppgifterna.

Binda en lagringsautentiseringsuppgift till en eller flera arbetsytor

Om du vill tilldela en lagringsautentiseringsuppgift till specifika arbetsytor kan du använda Catalog Explorer eller Databricks CLI.

behörigheter som krävs: Metastore-administratör, ägare av lagringsautentisering eller MANAGE för lagringsautentiseringen.

Kommentar

Metaarkivadministratörer kan se alla autentiseringsuppgifter för lagring i ett metaarkiv med hjälp av Catalog Explorer – och ägare av lagringsautentiseringsuppgifter kan se alla autentiseringsuppgifter för lagring som de äger i ett metaarkiv – oavsett om lagringsautentiseringsuppgifterna har tilldelats till den aktuella arbetsytan. Lagringsautentiseringsuppgifter som inte har tilldelats arbetsytan visas nedtonade.

Katalogutforskaren

  1. Logga in på en arbetsyta som är länkad till metaarkivet.

  2. I sidofältet klickar du på ikonen KatalogKatalog.

  3. På sidan Snabbåtkomst klickar du på knappen Externa data > och går till fliken autentiseringsuppgifter.

  4. Välj lagringsautentiseringsuppgifterna och gå till fliken Arbetsytor.

  5. På fliken Arbetsytor avmarkerar du kryssrutan Alla arbetsytor har åtkomst .

    Om lagringsautentiseringsuppgifterna redan är bundna till en eller flera arbetsytor är den här kryssrutan redan avmarkerad.

  6. Klicka på Tilldela till arbetsytor och ange eller hitta de arbetsytor som du vill tilldela.

Om du vill återkalla åtkomsten går du till fliken Arbetsytor, väljer arbetsytan och klickar på Återkalla. Om du vill tillåta åtkomst från alla arbetsytor markerar du kryssrutan Alla arbetsytor har åtkomst.

CLI

Det finns två Databricks CLI-kommandogrupper och två steg som krävs för att tilldela en lagringsautentiseringsuppgift till en arbetsyta.

I följande exempel ersätter du <profile-name> med namnet på din Konfigurationsprofil för Azure Databricks-autentisering. Det bör innehålla värdet för en personlig åtkomsttoken, utöver arbetsytans instansnamn och arbetsyte-ID för arbetsytan där du genererade den personliga åtkomsttoken. Mer information finns i autentisering med personlig åtkomsttoken i Azure Databricks.

  1. Använd storage-credentials kommandogruppens update-kommando för att ange lagringsautentiseringsuppgifternas isolation mode till ISOLATED:

    databricks storage-credentials update <my-storage-credential> \
    --isolation-mode ISOLATED \
    --profile <profile-name>
    

    Standardvärdet isolation-mode är alla arbetsytor som är OPEN kopplade till metaarkivet.

  2. workspace-bindings Använd kommandogruppens update-bindings kommando för att tilldela arbetsytorna till lagringsautentiseringsuppgifterna:

    databricks workspace-bindings update-bindings storage-credential <my-storage-credential> \
    --json '{
      "add": [{"workspace_id": <workspace-id>}...],
      "remove": [{"workspace_id": <workspace-id>}...]
    }' --profile <profile-name>
    

    Använd egenskaperna "add" och "remove" för att lägga till eller ta bort arbetsytebindningar.

    Kommentar

    Skrivskyddad bindning (BINDING_TYPE_READ_ONLY) är inte tillgänglig för lagringsbehörigheter. Därför finns det ingen anledning att ange binding_type för bindning av lagringsuppgifter.

Om du vill visa en lista över alla arbetsytetilldelningar för en lagringsautentiseringsuppgift använder du kommandot workspace-bindings kommandogruppens get-bindings:

databricks workspace-bindings get-bindings storage-credential <my-storage-credential> \
--profile <profile-name>

Koppla bort en lagringsautentiseringsuppgift från en arbetsyta

Instruktioner för att återkalla arbetsytans åtkomst till en lagringsautentiseringsuppgift med hjälp av Catalog Explorer eller kommandogruppen workspace-bindings CLI ingår i Binda en lagringsautentiseringsuppgift till en eller flera arbetsytor.

Nästa steg

Du kan visa, uppdatera, ta bort och ge andra användare behörighet att använda autentiseringsuppgifter för lagring. Se Hantera autentiseringsuppgifter för lagring.

Du kan definiera externa platser med hjälp av autentiseringsuppgifter för lagring. Se Skapa en extern plats för att ansluta molnlagring till Azure Databricks.