Dataadministration

Lär dig hur du hanterar dataåtkomst och hur du autentiserar i Azure Machine Learning.

GÄLLER FÖR:Azure CLI ml extension v2 (current)Python SDK azure-ai-ml v2 (aktuell)

Viktigt!

Den här artikeln är avsedd för Azure-administratörer som vill skapa den infrastruktur som krävs för en Azure Machine Learning-lösning.

Autentiseringsbaserad dataautentisering

I allmänhet omfattar autentiseringsbaserad dataautentisering följande kontroller:

  • Har den användare som har åtkomst till data från det autentiseringsbaserade dataarkivet tilldelats en roll med rollbaserad åtkomstkontroll (RBAC) som innehåller Microsoft.MachineLearningServices/workspaces/datastores/listsecrets/action?

    • Den här behörigheten krävs för att hämta autentiseringsuppgifter från datalagringen för användaren.
    • Inbyggda roller som redan innehåller den här behörigheten är Deltagare, Azure AI Developer eller Azure Machine Learning Dataforskare. Om en anpassad roll tillämpas måste du också se till att den här behörigheten läggs till i den anpassade rollen.
    • Du måste veta vilken specifik användare som försöker komma åt data. Det kan vara en riktig användare med en användaridentitet eller en dator med beräkningshanterad identitet (MSI). Se avsnittet Scenarier och autentiseringsalternativ för att identifiera den identitet som du behöver lägga till behörighet för.
  • Har den lagrade autentiseringsuppgiften (tjänstens huvudnamn, kontonyckel eller signaturtoken för delad åtkomst) åtkomst till dataresursen?

Identitetsbaserad dataautentisering

I allmänhet omfattar identitetsbaserad dataautentisering följande kontroller:

  • Vilken användare vill komma åt resurserna?
    • Beroende på kontexten när data används är olika typer av autentisering tillgängliga, till exempel:
      • Användaridentitet
      • Beräkna hanterad identitet
      • Hanterad identitet för arbetsyta
    • Jobb, inklusive datamängdsalternativet Generate Profile , körs på en beräkningsresurs i din prenumeration och får åtkomst till data från den platsen. Den beräkningshanterade identiteten behöver behörighet till lagringsresursen i stället för identiteten för den användare som skickade jobbet.
    • För autentisering baserat på en användaridentitet måste du veta vilken specifik användare som försökte komma åt lagringsresursen. Mer information om användarautentisering finns i Autentisering för Azure Machine Learning. Mer information om autentisering på tjänstnivå finns i Autentisering mellan Azure Machine Learning och andra tjänster.
  • Har den här användaren behörighet att läsa?
    • Har användaridentiteten eller den beräkningshanterade identiteten de behörigheter som krävs för lagringsresursen? Behörigheter beviljas med hjälp av Azure RBAC.
    • Lagringskontoläsaren läser lagringsmetadata.
    • Storage Blob Data Reader läser och listar lagringscontainrar och blobar.
    • Mer information finns i Inbyggda Azure-roller för lagring.
  • Har den här användaren behörighet att skriva?
    • Har användaridentiteten eller den beräkningshanterade identiteten de behörigheter som krävs för lagringsresursen? Behörigheter beviljas med hjälp av Azure RBAC.
    • Lagringskontoläsaren läser lagringsmetadata.
    • Storage Blob Data-deltagaren läser, skriver och tar bort Azure Storage-containrar och blobar.
    • Mer information finns i Inbyggda Azure-roller för lagring.

Andra allmänna autentiseringskontroller

  • Varifrån kommer åtkomsten?
    • Användare: Är klientens IP-adress i det virtuella nätverket/undernätsintervallet?
    • Arbetsyta: Är arbetsytan offentlig eller har den en privat slutpunkt i ett virtuellt nätverk/undernät?
    • Lagring: Tillåter lagringen offentlig åtkomst eller begränsar den åtkomsten via en tjänstslutpunkt eller en privat slutpunkt?
  • Vilken åtgärd kommer att utföras?
    • Azure Machine Learning hanterar åtgärder för att skapa, läsa, uppdatera och ta bort (CRUD) i ett datalager/en datauppsättning.
    • Arkivåtgärder på datatillgångar i Azure Machine Learning-studio kräver den här RBAC-åtgärden:Microsoft.MachineLearningServices/workspaces/datasets/registered/delete
    • Dataåtkomstanrop (till exempel förhandsversion eller schema) går till den underliggande lagringen och behöver extra behörigheter.
  • Kommer den här åtgärden att köras i dina Beräkningsresurser eller resurser för Azure-prenumerationen som finns i en Microsoft-prenumeration?
    • Alla anrop till datauppsättnings- och datalagertjänster (förutom Generate Profile alternativet) använder resurser som finns i en Microsoft-prenumeration för att köra åtgärderna.
    • Jobb, inklusive datamängdsalternativet Generate Profile , körs på en beräkningsresurs i din prenumeration och får åtkomst till data från den platsen. Beräkningsidentiteten behöver behörighet till lagringsresursen i stället för identiteten för den användare som skickade jobbet.

Det här diagrammet visar det allmänna flödet för ett dataåtkomstanrop. Här försöker en användare göra ett dataåtkomstanrop via en Machine Learning-arbetsyta, utan att använda en beräkningsresurs.

Diagram som visar logikflödet vid åtkomst till data.

Scenarier och autentiseringsalternativ

I den här tabellen visas de identiteter som ska användas för specifika scenarier.

Konfiguration Virtuell SDK-dator för lokal/notebook-dator Projekt Förhandsversion av datauppsättning Bläddra i datalager
MSI för autentiseringsuppgifter + arbetsyta Merit Merit Arbetsytans hanterade tjänstidentitet (MSI) Autentiseringsuppgifter (endast kontonyckel och signaturtoken för delad åtkomst)
Inga autentiseringsuppgifter + arbetsyta MSI Beräkna MSI/användaridentitet Beräkna MSI/användaridentitet Arbetsytans hanterade tjänstidentitet (MSI) Användaridentitet
MsI för autentiseringsuppgifter + ingen arbetsyta Merit Merit Autentiseringsuppgifter (stöds inte för förhandsversion av datauppsättningar under privat nätverk) Autentiseringsuppgifter (endast kontonyckel och signaturtoken för delad åtkomst)
No Credential + No Workspace MSI Beräkna MSI/användaridentitet Beräkna MSI/användaridentitet Användaridentitet Användaridentitet

För SDK V1 använder dataautentisering i ett jobb alltid beräknings-MSI. För SDK V2 beror dataautentisering i ett jobb på jobbinställningen. Det kan vara användaridentitet eller beräknings-MSI baserat på din inställning.

Dricks

För att komma åt data utanför Machine Learning, till exempel med Azure Storage Explorer, förlitar sig den åtkomsten förmodligen på användaridentiteten. Mer information finns i dokumentationen för det verktyg eller den tjänst du använder. Mer information om hur Machine Learning fungerar med data finns i Konfigurera autentisering mellan Azure Machine Learning och andra tjänster.

Specifika krav för virtuellt nätverk

Följande information hjälper dig att konfigurera dataautentisering för att komma åt data bakom ett virtuellt nätverk från en Machine Learning-arbetsyta.

Lägga till behörigheter för ett lagringskonto till en hanterad identitet för Machine Learning-arbetsytan

När du använder ett lagringskonto från studion måste du aktivera Använd arbetsytehanterad identitet för dataförhandsgranskning och profilering i Azure Machine Learning-studio i datalagringsinställningen om du vill se förhandsversionen av datamängden. Lägg sedan till följande Azure RBAC-roller för lagringskontot i arbetsytans hanterade identitet:

  • Blob-dataläsare
  • Om lagringskontot använder en privat slutpunkt för att ansluta till det virtuella nätverket måste du bevilja rollen Läsare för lagringskontots privata slutpunkt till den hanterade identiteten.

Mer information finns i Använda Azure Machine Learning-studio i ett virtuellt Azure-nätverk.

I följande avsnitt beskrivs begränsningarna för att använda ett lagringskonto, med din arbetsyta, i ett virtuellt nätverk.

Säker kommunikation med ett lagringskonto

För att skydda kommunikationen mellan Machine Learning- och lagringskonton konfigurerar du lagringen så att den ger åtkomst till betrodda Azure-tjänster.

Azure Storage-brandvägg

När ett lagringskonto finns bakom ett virtuellt nätverk kan lagringsbrandväggen normalt användas för att tillåta att klienten ansluter direkt via Internet. Men när du använder studion ansluter klienten inte till lagringskontot. Machine Learning-tjänsten som gör begäran ansluter till lagringskontot. IP-adressen för tjänsten dokumenteras inte och ändras ofta. Om du aktiverar lagringsbrandväggen tillåts inte studioåtkomst till lagringskontot i en konfiguration av virtuellt nätverk.

Slutpunktstyp för Azure Storage

När arbetsytan använder en privat slutpunkt och lagringskontot också finns i det virtuella nätverket uppstår extra valideringskrav när du använder studion:

  • Om lagringskontot använder en tjänstslutpunkt måste slutpunkten för arbetsytans privata slutpunkt och lagringstjänst finnas i samma undernät i det virtuella nätverket.
  • Om lagringskontot använder en privat slutpunkt måste den privata slutpunkten för arbetsytan och den privata lagringsslutpunkten finnas i samma virtuella nätverk. I det här fallet kan de finnas i olika undernät.

Azure Data Lake Storage Gen1

När du använder Azure Data Lake Storage Gen1 som ett datalager kan du bara använda åtkomstkontrollistor i POSIX-format. Du kan tilldela arbetsytans hanterade identitet åtkomst till resurser, som andra säkerhetsobjekt. Mer information finns i Åtkomstkontroll i Azure Data Lake Storage Gen1.

Azure Data Lake Storage Gen2

När du använder Azure Data Lake Storage Gen2 som ett datalager kan du använda åtkomstkontrollistor i både Azure RBAC- och POSIX-format för att styra dataåtkomsten i ett virtuellt nätverk.

Nästa steg

Information om hur du aktiverar studion i ett nätverk finns i Använda Azure Machine Learning-studio i ett virtuellt Azure-nätverk.