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:

  • Autentiseringsuppgifter för lagring kapslar in en långsiktig molnautentiseringsuppgift som ger åtkomst till molnlagring.
  • Externa platser innehåller en referens till en lagringsautentiseringsuppgift och en molnlagringssökväg.

Mer information finns i Ansluta till molnobjektlagring med Unity Catalog.

Unity Catalog stöder två molnlagringsalternativ för Azure Databricks: Azure Data Lake Storage Gen2-containrar och Cloudflare R2-bucketar. 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.

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.

    Kommentar

    Tjänstens huvudnamn måste ha rollen kontoadministratör för att skapa en lagringsautentiseringsuppgift som använder en hanterad identitet. Du kan inte delegera CREATE STORAGE CREDENTIAL till ett huvudnamn för tjänsten. Detta gäller för både Azure Databricks-tjänstens huvudnamn och Tjänstens huvudnamn för Microsoft Entra-ID (tidigare Azure Active Directory).

I din Azure-klientorganisation:

  • En Azure Data Lake Storage Gen2-lagringscontainer 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 tjänstens huvudnamn kan du läsa Skapa hanterad lagring i Unity Catalog med hjälp av tjänstens huvudnamn (äldre).

  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 behörigheten CREATE STORAGE CREDENTIAL .

    Både administratörsrollerna för metaarkivet och kontoadministratören innehåller den här behörigheten. Om du är inloggad som tjänstens huvudnamn (oavsett om det är ett Microsoft Entra-ID eller inbyggt Huvudnamn för Azure Databricks-tjänsten) måste du ha rollen som kontoadministratör för att skapa en lagringsautentiseringsuppgift som använder en hanterad identitet.

  3. Klicka på Katalogikon Katalog.

  4. Längst upp i fönstret Katalog klickar du på Lägg till eller plusikon ikonen Lägg till och väljer Lägg till en lagringsautentiseringsuppgift på menyn.

    Det här alternativet visas inte om du inte har behörigheten CREATE STORAGE CREDENTIAL .

    Du kan också klicka på knappen Externa data >på sidan Snabbåtkomst, gå till fliken Autentiseringsuppgifter för lagring och välja Skapa autentiseringsuppgifter.

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

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

    /subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.Databricks/accessConnectors/<connector-name>
    
  7. (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>
    
  8. (Valfritt) Om du vill att användarna ska ha skrivskyddad åtkomst till de externa platser som använder den här lagringsautentiseringsuppgiften väljer du Skrivskyddad. Mer information finns i Markera en lagringsautentiseringsuppgift som skrivskyddad.

  9. Klicka på Spara.

  10. (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.

  11. 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: Metaarkivadministratör eller ägare av lagringsautentiseringsuppgifter.

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. Klicka på Katalogikon Katalog i sidopanelen.

  3. Längst upp i fönstret Katalog klickar du på kugghjulsikonenKugghjulsikon och väljer Autentiseringsuppgifter för lagring.

    Du kan också klicka på knappen Externa data > på sidan Snabbåtkomst och gå till fliken Autentiseringsuppgifter för lagring.

  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. storage-credentials Använd kommandogruppens update kommando för att ange lagringsautentiseringsuppgifterna 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>
    

    "add" Använd egenskaperna 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 lagringsautentiseringsuppgifter. Därför finns det ingen anledning att ange binding_type för bindningen av lagringsuppgifter.

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

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 workspace-bindings CLI-kommandogruppen ingår i Bind 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 lagringsautentiseringsuppgift för anslutning till Azure Data Lake Storage Gen2.