Skydda Azure Machine Learning-arbetsyteresurser med hjälp av virtuella nätverk (VNet)

Dricks

Microsoft rekommenderar att du använder hanterade virtuella Azure Machine Learning-nätverk i stället för stegen i den här artikeln. Med ett hanterat virtuellt nätverk hanterar Azure Machine Learning jobbet med nätverksisolering för din arbetsyta och hanterade beräkningar. Du kan också lägga till privata slutpunkter för resurser som behövs av arbetsytan, till exempel Azure Storage-konto. Mer information finns i Hanterad nätverksisolering för arbetsyta.

Skydda Azure Machine Learning-arbetsyteresurser och beräkningsmiljöer med hjälp av virtuella Azure-nätverk (VNets). Den här artikeln använder ett exempelscenario för att visa hur du konfigurerar ett fullständigt virtuellt nätverk.

Den här artikeln är en del av en serie om att skydda ett Azure Machine Learning-arbetsflöde. Se de andra artiklarna i den här serien:

Den här artikeln är en del av en serie om att skydda ett Azure Machine Learning-arbetsflöde. Se de andra artiklarna i den här serien:

En självstudiekurs om hur du skapar en säker arbetsyta finns i Självstudie: Skapa en säker arbetsyta eller Självstudie: Skapa en säker arbetsyta med hjälp av en mall.

Förutsättningar

Den här artikeln förutsätter att du känner till följande artiklar:

Exempelscenario

I det här avsnittet får du lära dig hur ett vanligt nätverksscenario konfigureras för att skydda Azure Machine Learning-kommunikation med privata IP-adresser.

I följande tabell jämförs hur tjänster får åtkomst till olika delar av ett Azure Machine Learning-nätverk med och utan ett virtuellt nätverk:

Scenario Arbetsyta Associerade resurser Träningsberäkningsmiljö Slutsatsdragning av beräkningsmiljö
Inget virtuellt nätverk Offentlig IP-adress Offentlig IP-adress Offentlig IP-adress Offentlig IP-adress
Offentlig arbetsyta, alla andra resurser i ett virtuellt nätverk Offentlig IP-adress Offentlig IP-adress (tjänstslutpunkt)
-Eller-
Privat IP (privat slutpunkt)
Offentlig IP-adress Privat IP
Skydda resurser i ett virtuellt nätverk Privat IP (privat slutpunkt) Offentlig IP-adress (tjänstslutpunkt)
-Eller-
Privat IP (privat slutpunkt)
Privat IP Privat IP
  • Arbetsyta – Skapa en privat slutpunkt för din arbetsyta. Den privata slutpunkten ansluter arbetsytan till det virtuella nätverket via flera privata IP-adresser.
    • Offentlig åtkomst – Du kan också aktivera offentlig åtkomst för en skyddad arbetsyta.
  • Associerad resurs – Använd tjänstslutpunkter eller privata slutpunkter för att ansluta till arbetsyteresurser som Azure Storage, Azure Key Vault. För Azure Container Services använder du en privat slutpunkt.
    • Tjänstslutpunkter tillhandahåller identiteten för ditt virtuella nätverk till Azure-tjänsten. När du har aktiverat tjänstslutpunkter i det virtuella nätverket kan du lägga till en regel för virtuellt nätverk för att skydda Azure-tjänstresurserna i ditt virtuella nätverk. Tjänstslutpunkter använder offentliga IP-adresser.
    • Privata slutpunkter är nätverksgränssnitt som på ett säkert sätt ansluter dig till en tjänst som drivs av Azure Private Link. Privat slutpunkt använder en privat IP-adress från ditt virtuella nätverk, vilket effektivt för in tjänsten i ditt virtuella nätverk.
  • Utbildning av beräkningsåtkomst – Åtkomst till träningsberäkningsmål som Azure Machine Learning Compute Instance och Azure Machine Learning Compute Clusters med offentliga eller privata IP-adresser.
  • Slutsatsdragningsberäkningsåtkomst – Få åtkomst till AKS-beräkningskluster (Azure Kubernetes Services) med privata IP-adresser.

I nästa avsnitt visas hur du skyddar nätverksscenariot som beskrevs tidigare. För att skydda nätverket måste du:

  1. Skydda arbetsytan och associerade resurser.
  2. Skydda träningsmiljön.
  3. Skydda inferensmiljön.
  4. Alternativt: aktivera studiofunktioner.
  5. Konfigurera brandväggsinställningar.
  6. Konfigurera DNS-namnmatchning.

Offentlig arbetsyta och skyddade resurser

Viktigt!

Det här är en konfiguration som stöds för Azure Machine Learning, men Microsoft rekommenderar det inte. Data i Azure Storage-kontot bakom det virtuella nätverket kan exponeras på den offentliga arbetsytan. Du bör kontrollera den här konfigurationen med säkerhetsteamet innan du använder den i produktion.

Om du vill komma åt arbetsytan via det offentliga Internet samtidigt som alla associerade resurser skyddas i ett virtuellt nätverk använder du följande steg:

  1. Skapa ett virtuellt Azure-nätverk. Det här nätverket skyddar de resurser som används av arbetsytan.

  2. Använd något av följande alternativ för att skapa en offentligt tillgänglig arbetsyta:

    ELLER

  3. Lägg till följande tjänster i det virtuella nätverket med hjälp av antingen en tjänstslutpunkt eller en privat slutpunkt. Tillåt även betrodda Microsoft-tjänster att få åtkomst till dessa tjänster:

  4. Lägg till klientens IP-adress i listan över tillåtna i brandväggsinställningarna i egenskaper för Azure Storage-konton för din arbetsyta. Mer information finns i Konfigurera brandväggar och virtuella nätverk.

Skydda arbetsytan och associerade resurser

Använd följande steg för att skydda din arbetsyta och associerade resurser. Med de här stegen kan dina tjänster kommunicera i det virtuella nätverket.

  1. Skapa ett virtuellt Azure-nätverk. Det här nätverket skyddar arbetsytan och andra resurser. Skapa sedan en Private Link-aktiverad arbetsyta för att aktivera kommunikation mellan ditt virtuella nätverk och din arbetsyta.

  2. Lägg till följande tjänster i det virtuella nätverket med hjälp av antingen en tjänstslutpunkt eller en privat slutpunkt. Tillåt även betrodda Microsoft-tjänster att få åtkomst till dessa tjänster:

    Tjänst Slutpunktsinformation Tillåt betrodd information
    Azure Key Vault Privat slutpunkt för tjänstslutpunkt
    Tillåt att betrodda Microsoft-tjänster kringgår den här brandväggen
    Azure Storage-konto Privat slutpunkt för tjänst och privat slutpunkt
    Bevilja åtkomst från Azure-resursinstanser
    eller
    Bevilja åtkomst till betrodda Azure-tjänster
    Azure Container Registry Privat slutpunkt Tillåt betrodda tjänster
  1. Skapa ett virtuellt Azure-nätverk. Det här virtuella nätverket skyddar arbetsytan och andra resurser. Skapa sedan en Private Link-aktiverad arbetsyta för att aktivera kommunikation mellan ditt virtuella nätverk och din arbetsyta.

  2. Lägg till följande tjänster i det virtuella nätverket med hjälp av antingen en tjänstslutpunkt eller en privat slutpunkt. Tillåt även betrodda Microsoft-tjänster att få åtkomst till dessa tjänster:

    Tjänst Slutpunktsinformation Tillåt betrodd information
    Azure Key Vault Privat slutpunkt för tjänstslutpunkt
    Tillåt att betrodda Microsoft-tjänster kringgår den här brandväggen
    Azure Storage-konto Privat slutpunkt för tjänst och privat slutpunkt
    Bevilja åtkomst från Azure-resursinstanser
    eller
    Bevilja åtkomst till betrodda Azure-tjänster
    Azure Container Registry Privat slutpunkt Tillåt betrodda tjänster

Diagram showing how the workspace and associated resources communicate inside a VNet.

Detaljerade anvisningar om hur du utför de här stegen finns i Skydda en Azure Machine Learning-arbetsyta.

Detaljerade anvisningar om hur du utför de här stegen finns i Skydda en Azure Machine Learning-arbetsyta.

Begränsningar

Att skydda din arbetsyta och associerade resurser i ett virtuellt nätverk har följande begränsningar:

  • Arbetsytan och standardlagringskontot måste finnas i samma virtuella nätverk. Undernät i samma virtuella nätverk tillåts dock. Till exempel arbetsytan i ett undernät och lagring i ett annat.

    Vi rekommenderar att Azure Key Vault och Azure Container Registry för arbetsytan också finns i samma virtuella nätverk. Båda dessa resurser kan dock också finnas i ett peer-kopplat virtuellt nätverk.

Skydda träningsmiljön

I det här avsnittet får du lära dig hur du skyddar träningsmiljön i Azure Machine Learning. Du får också lära dig hur Azure Machine Learning slutför ett träningsjobb för att förstå hur nätverkskonfigurationerna fungerar tillsammans.

Använd följande steg för att skydda träningsmiljön:

  1. Skapa en Azure Machine Learning-beräkningsinstans och ett datorkluster i det virtuella nätverket för att köra träningsjobbet.

  2. Om beräkningsklustret eller beräkningsinstansen använder en offentlig IP-adress måste du tillåta inkommande kommunikation så att hanteringstjänster kan skicka jobb till dina beräkningsresurser.

    Dricks

    Beräkningskluster och beräkningsinstanser kan skapas med eller utan en offentlig IP-adress. Om den skapas med en offentlig IP-adress får du en lastbalanserare med en offentlig IP-adress för att acceptera inkommande åtkomst från Azure Batch Service och Azure Machine Learning-tjänsten. Du måste konfigurera användardefinierad routning (UDR) om du använder en brandvägg. Om den skapas utan en offentlig IP-adress får du en privat länktjänst som accepterar inkommande åtkomst från Azure Batch-tjänsten och Azure Machine Learning-tjänsten utan en offentlig IP-adress.

  1. Skapa en Azure Machine Learning-beräkningsinstans och ett datorkluster i det virtuella nätverket för att köra träningsjobbet.

  2. Om beräkningsklustret eller beräkningsinstansen använder en offentlig IP-adress måste du tillåta inkommande kommunikation så att hanteringstjänster kan skicka jobb till dina beräkningsresurser.

    Dricks

    Beräkningskluster och beräkningsinstanser kan skapas med eller utan en offentlig IP-adress. Om den skapas med en offentlig IP-adress får du en lastbalanserare med en offentlig IP-adress för att acceptera inkommande åtkomst från Azure Batch Service och Azure Machine Learning-tjänsten. Du måste konfigurera användardefinierad routning (UDR) om du använder en brandvägg. Om den skapas utan en offentlig IP-adress får du en privat länktjänst som accepterar inkommande åtkomst från Azure Batch-tjänsten och Azure Machine Learning-tjänsten utan en offentlig IP-adress.

Diagram showing how to secure managed compute clusters and instances.

Detaljerade anvisningar om hur du utför de här stegen finns i Skydda en träningsmiljö.

Detaljerade anvisningar om hur du utför de här stegen finns i Skydda en träningsmiljö.

Exempel på sändning av utbildningsjobb

I det här avsnittet får du lära dig hur Azure Machine Learning kommunicerar säkert mellan tjänster för att skicka ett träningsjobb. Det här exemplet visar hur alla dina konfigurationer fungerar tillsammans för att skydda kommunikationen.

  1. Klienten laddar upp träningsskript och träningsdata till lagringskonton som skyddas med en tjänst eller en privat slutpunkt.

  2. Klienten skickar ett träningsjobb till Azure Machine Learning-arbetsytan via den privata slutpunkten.

  3. Azure Batch-tjänsten tar emot jobbet från arbetsytan. Sedan skickas träningsjobbet till beräkningsmiljön via den offentliga lastbalanseraren för beräkningsresursen.

  4. Beräkningsresursen tar emot jobbet och börjar träna. Beräkningsresursen använder information som lagras i nyckelvalvet för att få åtkomst till lagringskonton för att ladda ned träningsfiler och ladda upp utdata.

Diagram showing the secure training job submission workflow.

Begränsningar

  • Beräkningsinstansen och beräkningsklustren för Azure måste finnas i samma virtuella nätverk, region och prenumeration som arbetsytan och dess associerade resurser.

Skydda miljön för slutsatsdragning

Du kan aktivera nätverksisolering för hanterade onlineslutpunkter för att skydda följande nätverkstrafik:

  • Inkommande bedömningsbegäranden.
  • Utgående kommunikation med arbetsytan, Azure Container Registry och Azure Blob Storage.

Mer information finns i Aktivera nätverksisolering för hanterade onlineslutpunkter.

I det här avsnittet får du lära dig vilka alternativ som är tillgängliga för att skydda en slutsatsdragningsmiljö när du använder Azure CLI-tillägget för ML v1 eller Azure Machine Learning Python SDK v1. När du gör en v1-distribution rekommenderar vi att du använder AKS-kluster (Azure Kubernetes Services) för storskaliga produktionsdistributioner.

Du har två alternativ för AKS-kluster i ett virtuellt nätverk:

  • Distribuera eller koppla ett AKS-standardkluster till ditt virtuella nätverk.
  • Koppla ett privat AKS-kluster till ditt virtuella nätverk.

AKS-standardkluster har ett kontrollplan med offentliga IP-adresser. Du kan lägga till ett AKS-standardkluster i ditt virtuella nätverk under distributionen eller koppla ett kluster när det har skapats.

Privata AKS-kluster har ett kontrollplan som bara kan nås via privata IP-adresser. Privata AKS-kluster måste kopplas när klustret har skapats.

Detaljerade anvisningar om hur du lägger till standardkluster och privata kluster finns i Skydda en slutsatsdragningsmiljö.

Oavsett vilket AKS-standardkluster eller privat AKS-kluster som används måste din arbetsyta och dess associerade resurser (lagring, nyckelvalv och ACR) ha privata slutpunkter eller tjänstslutpunkter i samma VNET som AKS-klustret om aks-klustret ligger bakom det virtuella nätverket.

Följande nätverksdiagram visar en säker Azure Machine Learning-arbetsyta med ett privat AKS-kluster kopplat till det virtuella nätverket.

Diagram showing an attached private AKS cluster.

Valfritt: Aktivera offentlig åtkomst

Du kan skydda arbetsytan bakom ett virtuellt nätverk med hjälp av en privat slutpunkt och fortfarande tillåta åtkomst via det offentliga Internet. Den inledande konfigurationen är samma som att skydda arbetsytan och associerade resurser.

När du har skyddat arbetsytan med en privat slutpunkt använder du följande steg för att göra det möjligt för klienter att fjärrutveckla med hjälp av antingen SDK:t eller Azure Machine Learning-studio:

  1. Aktivera offentlig åtkomst till arbetsytan.
  2. Konfigurera Azure Storage-brandväggen så att den tillåter kommunikation med IP-adressen för klienter som ansluter via det offentliga Internet.
  1. Aktivera offentlig åtkomst till arbetsytan.
  2. Konfigurera Azure Storage-brandväggen så att den tillåter kommunikation med IP-adressen för klienter som ansluter via det offentliga Internet.

Valfritt: aktivera studiofunktioner

Om lagringen finns i ett virtuellt nätverk måste du använda extra konfigurationssteg för att aktivera fullständig funktionalitet i Studio. Som standard är följande funktioner inaktiverade:

  • Förhandsgranska data i studion.
  • Visualisera data i designern.
  • Distribuera en modell i designern.
  • Skicka ett AutoML-experiment.
  • Starta ett dataetiketteringsprojekt.

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

Begränsningar

ML-assisterad dataetikettering stöder inte ett standardlagringskonto bakom ett virtuellt nätverk. Använd i stället ett annat lagringskonto än standardvärdet för ML-assisterad dataetikettering.

Dricks

Så länge det inte är standardlagringskontot kan det konto som används av dataetiketter skyddas bakom det virtuella nätverket.

Konfigurera brandväggsinställningar

Konfigurera brandväggen för att styra trafiken mellan dina Azure Machine Learning-arbetsyteresurser och det offentliga Internet. Vi rekommenderar Azure Firewall, men du kan använda andra brandväggsprodukter.

Mer information om brandväggsinställningar finns i Använda arbetsyta bakom en brandvägg.

Anpassad DNS

Om du behöver använda en anpassad DNS-lösning för ditt virtuella nätverk måste du lägga till värdposter för din arbetsyta.

Mer information om de domännamn och IP-adresser som krävs finns i hur du använder en arbetsyta med en anpassad DNS-server.

Microsoft Sentinel

Microsoft Sentinel är en säkerhetslösning som kan integreras med Azure Machine Learning. Du kan till exempel använda Jupyter Notebooks som tillhandahålls via Azure Machine Learning. Mer information finns i Använda Jupyter Notebooks för att söka efter säkerhetshot.

Offentlig åtkomst

Microsoft Sentinel kan automatiskt skapa en arbetsyta åt dig om du är OK med en offentlig slutpunkt. I den här konfigurationen ansluter SOC-analytiker och systemadministratörer (Security Operations Center) till notebook-filer på din arbetsyta via Sentinel.

Information om den här processen finns i Skapa en Azure Machine Learning-arbetsyta från Microsoft Sentinel

Diagram showing Microsoft Sentinel public connection.

Privat slutpunkt

Om du vill skydda din arbetsyta och associerade resurser i ett virtuellt nätverk måste du först skapa Azure Machine Learning-arbetsytan. Du måste också skapa en virtuell dators "jump box" i samma virtuella nätverk som din arbetsyta och aktivera Azure Bastion-anslutning till den. På samma sätt som den offentliga konfigurationen kan SOC-analytiker och administratörer ansluta med Hjälp av Microsoft Sentinel, men vissa åtgärder måste utföras med Hjälp av Azure Bastion för att ansluta till den virtuella datorn.

Mer information om den här konfigurationen finns i Skapa en Azure Machine Learning-arbetsyta från Microsoft Sentinel

Daigram showing Microsoft Sentinel connection through a VNet.

Nästa steg

Den här artikeln är en del av en serie om att skydda ett Azure Machine Learning-arbetsflöde. Se de andra artiklarna i den här serien: