Konfigurera en privat slutpunkt för en Azure Machine Learning-arbetsyta

GÄLLER FÖR:Azure CLI ml extension v2 (aktuell)

I det här dokumentet får du lära dig hur du konfigurerar en privat slutpunkt för din Azure Machine Learning-arbetsyta. Information om hur du skapar ett virtuellt nätverk för Azure Machine Learning finns i Översikt över isolering och sekretess för virtuella nätverk.

Med Azure Private Link kan du ansluta till din arbetsyta med hjälp av en privat slutpunkt. Den privata slutpunkten är en uppsättning privata IP-adresser i ditt virtuella nätverk. Du kan sedan begränsa åtkomsten till din arbetsyta så att den endast sker via de privata IP-adresserna. En privat slutpunkt hjälper till att minska risken för dataexfiltrering. Mer information om privata slutpunkter finns i artikeln Azure Private Link .

Varning

Att skydda en arbetsyta med privata slutpunkter säkerställer inte säkerhet från slutpunkt till slutpunkt på egen hand. Du måste skydda alla enskilda komponenter i din lösning. Om du till exempel använder en privat slutpunkt för arbetsytan, men ditt Azure Storage-konto inte ligger bakom det virtuella nätverket, använder trafik mellan arbetsytan och lagring inte det virtuella nätverket för säkerhet.

Mer information om hur du skyddar resurser som används av Azure Machine Learning finns i följande artiklar:

Förutsättningar

  • Du måste ha ett befintligt virtuellt nätverk för att skapa den privata slutpunkten i.

    Varning

    Använd inte IP-adressintervallet 172.17.0.0/16 för ditt virtuella nätverk. Det här är standardintervallet för undernät som används av Docker-bryggnätverket och resulterar i fel om det används för ditt virtuella nätverk. Andra intervall kan också vara i konflikt beroende på vad du vill ansluta till det virtuella nätverket. Om du till exempel planerar att ansluta ditt lokala nätverk till det virtuella nätverket och ditt lokala nätverk också använder intervallet 172.16.0.0/16. I slutändan är det upp till dig att planera din nätverksinfrastruktur.

  • Inaktivera nätverksprinciper för privata slutpunkter innan du lägger till den privata slutpunkten.

Begränsningar

  • Om du aktiverar offentlig åtkomst för en arbetsyta som skyddas med en privat slutpunkt och använder Azure Machine Learning-studio via det offentliga Internet, kan vissa funktioner som designern inte komma åt dina data. Det här problemet inträffar när data lagras på en tjänst som skyddas bakom det virtuella nätverket. Exempelvis ett Azure Storage-konto.

  • Du kan stöta på problem med att försöka komma åt den privata slutpunkten för din arbetsyta om du använder Mozilla Firefox. Det här problemet kan vara relaterat till DNS via HTTPS i Mozilla Firefox. Vi rekommenderar att du använder Microsoft Edge eller Google Chrome.

  • Att använda en privat slutpunkt påverkar inte Azure-kontrollplanet (hanteringsåtgärder) som att ta bort arbetsytan eller hantera beräkningsresurser. Du kan till exempel skapa, uppdatera eller ta bort ett beräkningsmål. Dessa åtgärder utförs via det offentliga Internet som vanligt. Dataplansåtgärder, till exempel användning av Azure Machine Learning-studio, API:er (inklusive publicerade pipelines) eller SDK använder den privata slutpunkten.

  • När du skapar en beräkningsinstans eller ett beräkningskluster på en arbetsyta med en privat slutpunkt måste beräkningsinstansen och beräkningsklustret finnas i samma Azure-region som arbetsytan.

  • När du kopplar ett Azure Kubernetes Service-kluster till en arbetsyta med en privat slutpunkt måste klustret finnas i samma region som arbetsytan.

  • När du använder en arbetsyta med flera privata slutpunkter måste en av de privata slutpunkterna finnas i samma virtuella nätverk som följande beroendetjänster:

    • Azure Storage-konto som tillhandahåller standardlagringen för arbetsytan
    • Azure Key Vault för arbetsytan
    • Azure Container Registry för arbetsytan.

    Till exempel skulle ett virtuellt nätverk ("tjänster" VNet) innehålla en privat slutpunkt för beroendetjänsterna och arbetsytan. Med den här konfigurationen kan arbetsytan kommunicera med tjänsterna. Ett annat virtuellt nätverk ("klienter") kanske bara innehåller en privat slutpunkt för arbetsytan och används endast för kommunikation mellan klientutvecklingsdatorer och arbetsytan.

Skapa en arbetsyta som använder en privat slutpunkt

Använd någon av följande metoder för att skapa en arbetsyta med en privat slutpunkt. Var och en av dessa metoder kräver ett befintligt virtuellt nätverk:

Dricks

Om du vill skapa en arbetsyta, en privat slutpunkt och ett virtuellt nätverk samtidigt kan du läsa Använda en Azure Resource Manager-mall för att skapa en arbetsyta för Azure Machine Learning.

GÄLLER FÖR:Azure CLI ml extension v2 (aktuell)

När du använder Azure CLI-tillägget 2.0 CLI för maskininlärning används ett YAML-dokument för att konfigurera arbetsytan. I följande exempel visas hur du skapar en ny arbetsyta med hjälp av en YAML-konfiguration:

Dricks

När du använder en privat länk kan arbetsytan inte använda Beräkning av Azure Container Registry-uppgifter för avbildningsskapande. Egenskapen image_build_compute i den här konfigurationen anger ett cpu-beräkningsklusternamn som ska användas för Docker-avbildningsmiljöskapande. Du kan också ange om arbetsytan privat länk ska vara tillgänglig via Internet med hjälp av public_network_access egenskapen .

I det här exemplet måste den beräkning som refereras av image_build_compute skapas innan du skapar avbildningar.

$schema: https://azuremlschemas.azureedge.net/latest/workspace.schema.json
name: mlw-privatelink-prod
location: eastus
display_name: Private Link endpoint workspace-example
description: When using private link, you must set the image_build_compute property to a cluster name to use for Docker image environment building. You can also specify whether the workspace should be accessible over the internet.
image_build_compute: cpu-compute
public_network_access: Disabled
tags:
  purpose: demonstration
az ml workspace create \
    -g <resource-group-name> \
    --file privatelink.yml

När du har skapat arbetsytan använder du CLI-kommandona för Azure-nätverk för att skapa en privat länkslutpunkt för arbetsytan.

az network private-endpoint create \
    --name <private-endpoint-name> \
    --vnet-name <vnet-name> \
    --subnet <subnet-name> \
    --private-connection-resource-id "/subscriptions/<subscription>/resourceGroups/<resource-group-name>/providers/Microsoft.MachineLearningServices/workspaces/<workspace-name>" \
    --group-id amlworkspace \
    --connection-name workspace -l <location>

Om du vill skapa posterna i den privata DNS-zonen för arbetsytan använder du följande kommandon:

# Add privatelink.api.azureml.ms
az network private-dns zone create \
    -g <resource-group-name> \
    --name privatelink.api.azureml.ms

az network private-dns link vnet create \
    -g <resource-group-name> \
    --zone-name privatelink.api.azureml.ms \
    --name <link-name> \
    --virtual-network <vnet-name> \
    --registration-enabled false

az network private-endpoint dns-zone-group create \
    -g <resource-group-name> \
    --endpoint-name <private-endpoint-name> \
    --name myzonegroup \
    --private-dns-zone privatelink.api.azureml.ms \
    --zone-name privatelink.api.azureml.ms

# Add privatelink.notebooks.azure.net
az network private-dns zone create \
    -g <resource-group-name> \
    --name privatelink.notebooks.azure.net

az network private-dns link vnet create \
    -g <resource-group-name> \
    --zone-name privatelink.notebooks.azure.net \
    --name <link-name> \
    --virtual-network <vnet-name> \
    --registration-enabled false

az network private-endpoint dns-zone-group add \
    -g <resource-group-name> \
    --endpoint-name <private-endpoint-name> \
    --name myzonegroup \
    --private-dns-zone privatelink.notebooks.azure.net \
    --zone-name privatelink.notebooks.azure.net

Lägga till en privat slutpunkt i en arbetsyta

Använd någon av följande metoder för att lägga till en privat slutpunkt i en befintlig arbetsyta:

Varning

Om du har några befintliga beräkningsmål som är associerade med den här arbetsytan, och de inte ligger bakom samma virtuella nätverk som den privata slutpunkten skapas i, fungerar de inte.

GÄLLER FÖR:Azure CLI ml extension v2 (aktuell)

När du använder Azure CLI-tillägget 2.0 CLI för maskininlärning använder du CLI-kommandona för Azure-nätverk för att skapa en slutpunkt för privat länk för arbetsytan.

az network private-endpoint create \
    --name <private-endpoint-name> \
    --vnet-name <vnet-name> \
    --subnet <subnet-name> \
    --private-connection-resource-id "/subscriptions/<subscription>/resourceGroups/<resource-group-name>/providers/Microsoft.MachineLearningServices/workspaces/<workspace-name>" \
    --group-id amlworkspace \
    --connection-name workspace -l <location>

Om du vill skapa posterna i den privata DNS-zonen för arbetsytan använder du följande kommandon:

# Add privatelink.api.azureml.ms
az network private-dns zone create \
    -g <resource-group-name> \
    --name 'privatelink.api.azureml.ms'

az network private-dns link vnet create \
    -g <resource-group-name> \
    --zone-name 'privatelink.api.azureml.ms' \
    --name <link-name> \
    --virtual-network <vnet-name> \
    --registration-enabled false

az network private-endpoint dns-zone-group create \
    -g <resource-group-name> \
    --endpoint-name <private-endpoint-name> \
    --name myzonegroup \
    --private-dns-zone 'privatelink.api.azureml.ms' \
    --zone-name 'privatelink.api.azureml.ms'

# Add privatelink.notebooks.azure.net
az network private-dns zone create \
    -g <resource-group-name> \
    --name 'privatelink.notebooks.azure.net'

az network private-dns link vnet create \
    -g <resource-group-name> \
    --zone-name 'privatelink.notebooks.azure.net' \
    --name <link-name> \
    --virtual-network <vnet-name> \
    --registration-enabled false

az network private-endpoint dns-zone-group add \
    -g <resource-group-name> \
    --endpoint-name <private-endpoint-name> \
    --name myzonegroup \
    --private-dns-zone 'privatelink.notebooks.azure.net' \
    --zone-name 'privatelink.notebooks.azure.net'

Ta bort en privat slutpunkt

Du kan ta bort en eller alla privata slutpunkter för en arbetsyta. Om du tar bort en privat slutpunkt tas arbetsytan bort från det virtuella nätverk som slutpunkten var associerad med. Om du tar bort den privata slutpunkten kan det hindra arbetsytan från att komma åt resurser i det virtuella nätverket eller resurser i det virtuella nätverket från att komma åt arbetsytan. Om det virtuella nätverket till exempel inte tillåter åtkomst till eller från det offentliga Internet.

Varning

Om du tar bort de privata slutpunkterna för en arbetsyta blir den inte offentligt tillgänglig. Om du vill göra arbetsytan offentligt tillgänglig använder du stegen i avsnittet Aktivera offentlig åtkomst .

Om du vill ta bort en privat slutpunkt använder du följande information:

GÄLLER FÖR:Azure CLI ml extension v2 (aktuell)

När du använder Azure CLI-tillägget 2.0 CLI för maskininlärning använder du följande kommando för att ta bort den privata slutpunkten:

az network private-endpoint delete \
    --name <private-endpoint-name> \
    --resource-group <resource-group-name> \

Aktivera offentlig åtkomst

I vissa situationer kanske du vill tillåta att någon ansluter till din skyddade arbetsyta via en offentlig slutpunkt i stället för via det virtuella nätverket. Eller så kanske du vill ta bort arbetsytan från det virtuella nätverket och återaktivera offentlig åtkomst.

Viktigt!

Om du aktiverar offentlig åtkomst tar du inte bort några privata slutpunkter som finns. All kommunikation mellan komponenter bakom det virtuella nätverket som de privata slutpunkterna ansluter till är fortfarande säkrad. Den ger endast offentlig åtkomst till arbetsytan, förutom den privata åtkomsten via alla privata slutpunkter.

Varning

När du ansluter via den offentliga slutpunkten samtidigt som arbetsytan använder en privat slutpunkt för att kommunicera med andra resurser:

  • Vissa funktioner i Studio kommer inte att komma åt dina data. Det här problemet uppstår när data lagras på en tjänst som skyddas bakom det virtuella nätverket. Exempelvis ett Azure Storage-konto. Lös problemet genom att lägga till klientenhetens IP-adress i Azure Storage-kontots brandvägg.
  • Det går inte att använda Jupyter, JupyterLab, RStudio eller Posit Workbench (tidigare RStudio Workbench) på en beräkningsinstans, inklusive notebook-filer som körs.

Använd följande steg för att aktivera offentlig åtkomst:

Dricks

Det finns två möjliga egenskaper som du kan konfigurera:

  • allow_public_access_when_behind_vnet – används av Python SDK v1
  • public_network_access – används av CLI och Python SDK v2 Varje egenskap åsidosätter den andra. Inställningen åsidosätter till exempel public_network_access alla tidigare inställningar till allow_public_access_when_behind_vnet.

Microsoft rekommenderar att du använder public_network_access för att aktivera eller inaktivera offentlig åtkomst till en arbetsyta.

GÄLLER FÖR:Azure CLI ml extension v2 (aktuell)

När du använder Azure CLI-tillägget 2.0 CLI för maskininlärning använder du az ml update kommandot för att aktivera public_network_access för arbetsytan:

az ml workspace update \
    --set public_network_access=Enabled \
    -n <workspace-name> \
    -g <resource-group-name>

Du kan också aktivera åtkomst till offentligt nätverk med hjälp av en YAML-fil. Mer information finns i YAML-referensen för arbetsytan.

Aktivera endast offentlig åtkomst från INTERNET-IP-intervall (förhandsversion)

Du kan använda IP-nätverksregler för att tillåta åtkomst till din arbetsyta och slutpunkt från specifika offentliga IP-adressintervall för Internet genom att skapa IP-nätverksregler. Varje Azure Machine Learning-arbetsyta stöder upp till 200 regler. Dessa regler ger åtkomst till specifika Internetbaserade tjänster och lokala nätverk och blockerar allmän Internettrafik.

Varning

  • Aktivera åtkomstflaggan för slutpunktens offentliga nätverk om du vill tillåta åtkomst till slutpunkten från specifika offentliga IP-adressintervall för Internet.
  • När du aktiverar den här funktionen påverkar detta alla befintliga offentliga slutpunkter som är associerade med din arbetsyta. Detta kan begränsa åtkomsten till nya eller befintliga slutpunkter. Om du får åtkomst till några slutpunkter från en icke-tillåten IP-adress får du ett 403-fel.
  • Information om hur du använder den här funktionen med azure machine learning-hanterat virtuellt nätverk finns i Hanterat virtuellt Azure Machine Learning-nätverk.

GÄLLER FÖR:Azure CLI ml extension v2 (aktuell)

Azure CLI stöder inte detta.

Begränsningar för IP-nätverksregler

Följande begränsningar gäller för IP-adressintervall:

  • IP-nätverksregler tillåts endast för offentliga IP-adresser på Internet .

    Reserverade IP-adressintervall tillåts inte i IP-regler som privata adresser som börjar med 10, 172.16 till 172.31 och 192.168.

  • Du måste ange tillåtna internetadressintervall med hjälp av CIDR-notation i formuläret 16.17.18.0/24 eller som enskilda IP-adresser som 16.17.18.19.

  • Endast IPv4-adresser stöds för konfiguration av lagringsbrandväggsregler.

  • När den här funktionen är aktiverad kan du testa offentliga slutpunkter med alla klientverktyg som Postman eller andra, men verktyget Slutpunktstest i portalen stöds inte.

Anslut säkert till din arbetsyta

Om du vill ansluta till en arbetsyta som skyddas bakom ett virtuellt nätverk använder du någon av följande metoder:

  • Azure VPN-gateway – Anslut lokala nätverk till det virtuella nätverket via en privat anslutning. Anslut görs via det offentliga Internet. Det finns två typer av VPN-gatewayer som du kan använda:

    • Punkt-till-plats: Varje klientdator använder en VPN-klient för att ansluta till det virtuella nätverket.
    • Plats-till-plats: En VPN-enhet ansluter det virtuella nätverket till ditt lokala nätverk.
  • ExpressRoute – Anslut lokala nätverk i molnet via en privat anslutning. Anslut ion görs med hjälp av en anslutningsprovider.

  • Azure Bastion – I det här scenariot skapar du en virtuell Azure-dator (kallas ibland en hoppruta) i det virtuella nätverket. Sedan ansluter du till den virtuella datorn med Hjälp av Azure Bastion. Med Bastion kan du ansluta till den virtuella datorn med antingen en RDP- eller SSH-session från din lokala webbläsare. Sedan använder du jump-rutan som utvecklingsmiljö. Eftersom den finns i det virtuella nätverket kan den komma åt arbetsytan direkt. Ett exempel på hur du använder en hoppruta finns i Självstudie: Skapa en säker arbetsyta.

Viktigt!

När du använder en VPN-gateway eller ExpressRoute måste du planera hur namnmatchningen fungerar mellan dina lokala resurser och dem i det virtuella nätverket. Mer information finns i Använda en anpassad DNS-server.

Om du har problem med att ansluta till arbetsytan kan du läsa Felsöka säker arbetsyteanslutning.

Flera privata slutpunkter

Azure Machine Learning stöder flera privata slutpunkter för en arbetsyta. Flera privata slutpunkter används ofta när du vill hålla olika miljöer åtskilda. Följande är några scenarier som aktiveras med hjälp av flera privata slutpunkter:

  • Klientutvecklingsmiljöer i ett separat virtuellt nätverk.

  • Ett AKS-kluster (Azure Kubernetes Service) i ett separat virtuellt nätverk.

  • Andra Azure-tjänster i ett separat virtuellt nätverk. Azure Synapse och Azure Data Factory kan till exempel använda ett hanterat virtuellt Microsoft-nätverk. I båda fallen kan en privat slutpunkt för arbetsytan läggas till i det hanterade virtuella nätverk som används av dessa tjänster. Mer information om hur du använder ett hanterat virtuellt nätverk med dessa tjänster finns i följande artiklar:

    Viktigt!

    Synapse:s dataexfiltreringsskydd stöds inte med Azure Machine Learning.

Viktigt!

Varje virtuellt nätverk som innehåller en privat slutpunkt för arbetsytan måste också kunna komma åt Azure Storage-kontot, Azure Key Vault och Azure Container Registry som används av arbetsytan. Du kan till exempel skapa en privat slutpunkt för tjänsterna i varje virtuellt nätverk.

Om du lägger till flera privata slutpunkter används samma steg som beskrivs i avsnittet Lägg till en privat slutpunkt till en arbetsyta .

Scenario: Isolerade klienter

Om du vill isolera utvecklingsklienterna så att de inte har direkt åtkomst till de beräkningsresurser som används av Azure Machine Learning använder du följande steg:

Kommentar

De här stegen förutsätter att du har en befintlig arbetsyta, Ett Azure Storage-konto, Azure Key Vault och Azure Container Registry. Var och en av dessa tjänster har en privat slutpunkt i ett befintligt virtuellt nätverk.

  1. Skapa ett annat virtuellt nätverk för klienterna. Det här virtuella nätverket kan innehålla Virtuella Azure-datorer som fungerar som dina klienter, eller så kan det innehålla en VPN Gateway som används av lokala klienter för att ansluta till det virtuella nätverket.
  2. Lägg till en ny privat slutpunkt för Azure Storage-kontot, Azure Key Vault och Azure Container Registry som används av din arbetsyta. Dessa privata slutpunkter bör finnas i det virtuella klientnätverket.
  3. Om du har ett annat lagringsutrymme som används av din arbetsyta lägger du till en ny privat slutpunkt för lagringen. Den privata slutpunkten ska finnas i det virtuella klientnätverket och ha privat DNS-zonintegrering aktiverad.
  4. Lägg till en ny privat slutpunkt på din arbetsyta. Den här privata slutpunkten bör finnas i det virtuella klientnätverket och ha privat DNS-zonintegrering aktiverad.
  5. Använd stegen i artikeln Använd studio i ett virtuellt nätverk för att göra det möjligt för Studio att komma åt lagringskontona.

Följande diagram illustrerar den här konfigurationen. Det virtuella arbetsbelastningsnätverket innehåller beräkningar som skapats av arbetsytan för träning och distribution. Det virtuella klientnätverket innehåller klienter eller expressroute-/VPN-anslutningar för klienten. Båda de virtuella nätverken innehåller privata slutpunkter för arbetsytan, Azure Storage-kontot, Azure Key Vault och Azure Container Registry.

Diagram of isolated client VNet

Scenario: Isolerad Azure Kubernetes Service

Om du vill skapa en isolerad Azure Kubernetes-tjänst som används av arbetsytan använder du följande steg:

Kommentar

De här stegen förutsätter att du har en befintlig arbetsyta, Ett Azure Storage-konto, Azure Key Vault och Azure Container Registry. Var och en av dessa tjänster har en privat slutpunkt i ett befintligt virtuellt nätverk.

  1. Skapa en Azure Kubernetes Service-instans. När AKS skapas skapas ett virtuellt nätverk som innehåller AKS-klustret.
  2. Lägg till en ny privat slutpunkt för Azure Storage-kontot, Azure Key Vault och Azure Container Registry som används av din arbetsyta. Dessa privata slutpunkter bör finnas i det virtuella klientnätverket.
  3. Om du har annan lagring som används av din arbetsyta lägger du till en ny privat slutpunkt för lagringen. Den privata slutpunkten ska finnas i det virtuella klientnätverket och ha privat DNS-zonintegrering aktiverad.
  4. Lägg till en ny privat slutpunkt på din arbetsyta. Den här privata slutpunkten bör finnas i det virtuella klientnätverket och ha privat DNS-zonintegrering aktiverad.
  5. Koppla AKS-klustret till Azure Machine Learning-arbetsytan. Mer information finns i Skapa och koppla ett Azure Kubernetes Service-kluster.

Diagram of isolated AKS VNet

Nästa steg