Dela via


Nätverksisolering med Azure Mašinsko učenje-register

I den här artikeln lär du dig att skydda Azure Mašinsko učenje-registret med hjälp av Azure Virtual Network och privata slutpunkter.

Privata slutpunkter i Azure tillhandahåller nätverksisolering genom att göra det möjligt att komma åt Azure-tjänster via en privat IP-adress i ett virtuellt nätverk (VNet). Det virtuella nätverket skyddar anslutningar mellan Azure-resurser och förhindrar exponering av känsliga data för det offentliga Internet.

Om du använder nätverksisolering med privata slutpunkter förhindras nätverkstrafiken från att gå över det offentliga Internet och tar Azure Mašinsko učenje-registertjänsten till ditt virtuella nätverk. All nätverkstrafik sker via Azure Private Link när privata slutpunkter används.

Förutsättningar

Skydda Azure Mašinsko učenje-registret

Kommentar

För enkelhetens skull refererar vi till arbetsytan, dess associerade resurser och det virtuella nätverk som de ingår i som säker konfiguration av arbetsytor. Vi kommer att utforska hur du lägger till Azure Machine Learning-register som en del av den befintliga konfigurationen.

Följande diagram visar en grundläggande nätverkskonfiguration och hur Azure Mašinsko učenje-registret passar in. Om du redan använder Azure Mašinsko učenje arbetsyta och har en säker arbetsytekonfiguration där alla resurser ingår i det virtuella nätverket kan du skapa en privat slutpunkt från det befintliga virtuella nätverket till Azure Mašinsko učenje-registret och det är associerade resurser (lagring och ACR).

Om du inte har någon säker arbetsytekonfiguration kan du skapa den med hjälp av artiklarna Skapa en säker arbetsyta i Azure-portalen eller Skapa en säker arbetsyta med en mallartikel .

Diagram över registret som är anslutet till ett virtuellt nätverk som innehåller arbetsyta och associerade resurser med hjälp av en privat slutpunkt.

Begränsningar

Om du använder ett Azure Mašinsko učenje-register med nätverksisolering kan du visa modelltillgångar i Azure Mašinsko učenje Studio. Du kommer inte att kunna visa andra typer av tillgångar. Du kommer inte att kunna utföra några åtgärder i Azure Mašinsko učenje register eller tillgångar under det med studio. Använd Azure Mašinsko učenje CLI eller SDK i stället.

Scenario: konfigurationen av arbetsytan är säker och Azure Mašinsko učenje-registret är offentligt

I det här avsnittet beskrivs scenarier och nödvändig nätverkskonfiguration om du har en säker arbetsytekonfiguration men använder ett offentligt register.

Skapa tillgångar i registret från lokala filer

Identiteten (till exempel en Data Scientists Microsoft Entra-användaridentitet) som används för att skapa tillgångar i registret måste tilldelas rollen AzureML-registeranvändare, ägare eller deltagare i rollbaserad åtkomstkontroll i Azure. Mer information finns i artikeln Hantera åtkomst till Azure Mašinsko učenje.

Dela tillgångar från arbetsyta till register

Kommentar

Delning av en komponent från Azure Mašinsko učenje-arbetsyta till Azure Mašinsko učenje-registret stöds inte för närvarande.

På grund av dataexfiltreringsskydd går det inte att dela en tillgång från säker arbetsyta till ett offentligt register om lagringskontot som innehåller tillgången har offentlig åtkomst inaktiverad. Så här aktiverar du tillgångsdelning från arbetsyta till register:

  • Gå till avsnittet Nätverk i lagringskontot som är kopplat till arbetsytan (varifrån du vill tillåta delning av tillgångar till registret)
  • Ange Åtkomst till offentligt nätverk till Aktiverad från valda virtuella nätverk och IP-adresser
  • Rulla nedåt och gå till avsnittet Resursinstanser . Välj Resurstyp till Microsoft.MachineLearningServices/registries och ange Instansnamn till namnet på Azure Mašinsko učenje registerresurs om du vill aktivera delning till från arbetsytan.
  • Kontrollera resten av inställningarna enligt nätverkskonfigurationen.

Använda tillgångar från registret på arbetsytan

Exempelåtgärder:

  • Skicka ett jobb som använder en tillgång från registret.
  • Använd en komponent från registret i en pipeline.
  • Använd en miljö från registret i en komponent.

Om du använder tillgångar från registret till en säker arbetsyta måste du konfigurera utgående åtkomst till registret.

Distribuera en modell från registret till arbetsytan

Distributionen måste ha egress_public_network_access=disabled angetts för att distribuera en modell från ett register till en säker hanterad onlineslutpunkt. Azure Mašinsko učenje skapar nödvändiga privata slutpunkter till registret under slutpunktsdistributionen. Mer information finns i Skapa säkra hanterade onlineslutpunkter.

Utgående nätverkskonfiguration för åtkomst till alla Azure Mašinsko učenje-register

Tjänsttagg Protokoll och portar Syfte
AzureMachineLearning TCP: 443, 877, 18881
UDP: 5831
Använda Azure Machine Learning Services.
Storage.<region> TCP: 443 Få åtkomst till data som lagras i Azure Storage-kontot för beräkningskluster och beräkningsinstanser. Den här utgående informationen kan användas för att exfiltrera data. Mer information finns i Dataexfiltreringsskydd.
MicrosoftContainerRegistry.<region> TCP: 443 Få åtkomst till Docker-avbildningar som tillhandahålls av Microsoft.
AzureContainerRegistry.<region> TCP: 443 Åtkomst till Docker-avbildningar för miljöer.

Scenario: konfigurationen av arbetsytan är säker och Azure Mašinsko učenje-registret är anslutet till virtuella nätverk med hjälp av privata slutpunkter

I det här avsnittet beskrivs scenarier och nödvändig nätverkskonfiguration om du har en säker arbetsytekonfiguration med Azure Mašinsko učenje register som är anslutna med privat slutpunkt till ett virtuellt nätverk.

Azure Mašinsko učenje-registret har associerade lagrings-/ACR-tjänstinstanser. Dessa tjänstinstanser kan också anslutas till det virtuella nätverket med hjälp av privata slutpunkter för att skydda konfigurationen. Mer information finns i avsnittet Skapa en privat slutpunkt .

Så här hittar du Azure Storage-kontot och Azure Container Registry som används av registret

Lagringskontot och ACR som används av ditt Azure Mašinsko učenje-register skapas under en hanterad resursgrupp i din Azure-prenumeration. Namnet på den hanterade resursgruppen följer mönstret azureml-rg-<name-of-your-registry>_<GUID>för . GUID är en slumpmässigt genererad sträng. Om namnet på registret till exempel är "contosoreg" skulle namnet på den hanterade resursgruppen vara azureml-rg-contosoreg_<GUID>.

I Azure-portalen hittar du den här resursgruppen genom att söka azureml_rg-<name-of-your-registry>efter . Alla lagrings- och ACR-resurser för registret är tillgängliga under den här resursgruppen.

Skapa tillgångar i registret från lokala filer

Kommentar

Det går inte att skapa en miljötillgång i ett privat register där associerad ACR har offentlig åtkomst inaktiverad. Som en lösning kan du skapa en miljö i Azure Mašinsko učenje arbetsyta och dela den till Azure Mašinsko učenje-registret.

Klienter måste vara anslutna till det virtuella nätverk som registret är anslutet till med en privat slutpunkt.

Anslut säkert till registret

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

  • Azure VPN-gateway – Ansluter lokala nätverk till det virtuella nätverket via en privat anslutning. Anslutningen 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 – Ansluter lokala nätverk till molnet via en privat anslutning. Anslutningen 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 det finns i det virtuella nätverket kan det komma åt registret direkt.

Dela tillgångar från arbetsyta till register

Kommentar

Delning av en komponent från Azure Mašinsko učenje-arbetsyta till Azure Mašinsko učenje-registret stöds inte för närvarande.

På grund av dataexfiltreringsskydd går det inte att dela en tillgång från en säker arbetsyta till ett privat register om lagringskontot som innehåller tillgången har offentlig åtkomst inaktiverad. Så här aktiverar du tillgångsdelning från arbetsyta till register:

  • Gå till avsnittet Nätverk i lagringskontot som är kopplat till arbetsytan (varifrån du vill tillåta delning av tillgångar till registret)
  • Ange Åtkomst till offentligt nätverk till Aktiverad från valda virtuella nätverk och IP-adresser
  • Rulla nedåt och gå till avsnittet Resursinstanser . Välj Resurstyp till Microsoft.MachineLearningServices/registries och ange Instansnamn till namnet på Azure Mašinsko učenje registerresurs om du vill aktivera delning till från arbetsytan.
  • Kontrollera resten av inställningarna enligt nätverkskonfigurationen.

Använda tillgångar från registret på arbetsytan

Exempelåtgärder:

  • Skicka ett jobb som använder en tillgång från registret.
  • Använd en komponent från registret i en pipeline.
  • Använd en miljö från registret i en komponent.

Skapa en privat slutpunkt till registret, lagringen och ACR från arbetsytans virtuella nätverk. Om du försöker ansluta till flera register skapar du en privat slutpunkt för varje register och tillhörande lagring och ACL. Mer information finns i avsnittet Skapa en privat slutpunkt .

Distribuera en modell från registret till arbetsytan

Distributionen måste ha egress_public_network_access=disabled angetts för att distribuera en modell från ett register till en säker hanterad onlineslutpunkt. Azure Mašinsko učenje skapar nödvändiga privata slutpunkter till registret under slutpunktsdistributionen. Mer information finns i Skapa säkra hanterade onlineslutpunkter.

Skapa en privat slutpunkt

Använd flikarna för att visa instruktioner för att antingen lägga till en privat slutpunkt i ett befintligt register eller skapa ett nytt register som har en privat slutpunkt:

  1. I Azure-portalen söker du efter privat slutpunkt och väljer posten Privata slutpunkter för att gå till det privata länkcentret.

  2. På översiktssidan För privat länkcenter väljer du + Skapa.

  3. Ange den begärda informationen. För fältet Region väljer du samma region som ditt virtuella Azure-nätverk. Välj Nästa.

  4. På fliken Resurs väljer du När du väljer Resurstyp väljer du Microsoft.MachineLearningServices/registries. Ange fältet Resurs till ditt Azure Mašinsko učenje registernamn och välj sedan Nästa.

  5. På fliken Virtuellt nätverk väljer du det virtuella nätverket och undernätet för dina Azure-Mašinsko učenje resurser. Klicka på Nästa när du vill fortsätta.

  6. Från fliken DNS lämnar du standardvärdena om du inte har specifika privata DNS-integreringskrav. Klicka på Nästa när du vill fortsätta.

  7. På fliken Granska + skapa väljer du Skapa för att skapa den privata slutpunkten.

  8. Om du vill ange åtkomst till offentligt nätverk till inaktiverat använder du följande kommando. Bekräfta att lagringen och ACR också har åtkomsten till det offentliga nätverket inaktiverad.

    az ml registry update --set publicNetworkAccess=Disabled --name <name-of-registry>
    

Så här hittar du Azure Storage-kontot och Azure Container Registry som används av registret

Lagringskontot och ACR som används av ditt Azure Mašinsko učenje-register skapas under en hanterad resursgrupp i din Azure-prenumeration. Namnet på den hanterade resursgruppen följer mönstret azureml-rg-<name-of-your-registry>_<GUID>för . GUID är en slumpmässigt genererad sträng. Om namnet på registret till exempel är "contosoreg" skulle namnet på den hanterade resursgruppen vara azureml-rg-contosoreg_<GUID>.

I Azure-portalen hittar du den här resursgruppen genom att söka azureml_rg-<name-of-your-registry>efter . Alla lagrings- och ACR-resurser för registret är tillgängliga under den här resursgruppen.

Så här skapar du en privat slutpunkt för Azure Storage-kontot

Använd följande steg för att skapa en privat slutpunkt för lagringskontot som används av registret:

  1. I Azure-portalen söker du efter privat slutpunkt och väljer posten Privata slutpunkter för att gå till det privata länkcentret.
  2. På översiktssidan För privat länkcenter väljer du + Skapa.
  3. Ange den begärda informationen. För fältet Region väljer du samma region som ditt virtuella Azure-nätverk. Välj Nästa.
  4. På fliken Resurs väljer du När du väljer Resurstyp väljer du Microsoft.Storage/storageAccounts. Ange namnet på lagringskontot i fältet Resurs. Ange underresursen till Blob och välj sedan Nästa.
  5. På fliken Virtuellt nätverk väljer du det virtuella nätverket och undernätet för dina Azure-Mašinsko učenje resurser. Klicka på Nästa när du vill fortsätta.
  6. Från fliken DNS lämnar du standardvärdena om du inte har specifika privata DNS-integreringskrav. Klicka på Nästa när du vill fortsätta.
  7. På fliken Granska + skapa väljer du Skapa för att skapa den privata slutpunkten.

Dataexfiltreringsskydd

För en användare som skapat Azure Mašinsko učenje-registret rekommenderar vi att du använder en privat slutpunkt för registret, hanterat lagringskonto och hanterad ACR.

För ett systemregister rekommenderar vi att du skapar en tjänstslutpunktsprincip för lagringskontot med hjälp av aliaset /services/Azure/MachineLearning . Mer information finns i Konfigurera dataexfiltreringsskydd.

Så här hittar du registrets fullständigt kvalificerade domännamn

Kommentar

Kontrollera att DNS kan matcha det privata register-FQDN som är i det här formatet: <registry-guid>.registry.<region>.privatelink.api.azureml.ms eftersom det inte finns någon offentlig resursspecifik FQDN som rekursivt matchas av Azure DNS.

I följande exempel visas hur du använder identifierings-URL:en för att hämta det fullständigt kvalificerade domännamnet (FQDN) för registret. När du anropar identifierings-URL:en måste du ange en Azure-åtkomsttoken i begärandehuvudet. I följande exempel visas hur du hämtar en åtkomsttoken och anropar identifierings-URL:en:

Dricks

Formatet för identifierings-URL:en är https://<region>.api.azureml.ms/registrymanagement/v1.0/registries/<registry_name>/discovery, där <region> är den region där registret finns och <registry_name> är namnet på registret. Om du vill anropa URL:en gör du en GET-begäran:

   GET https://<region>.api.azureml.ms/registrymanagement/v1.0/registries/<registry_name>/discovery 
$region = "<region>"
$registryName = "<registry_name>"
$accessToken = (az account get-access-token | ConvertFrom-Json).accessToken 
(Invoke-RestMethod -Method Get `
                   -Uri "https://$region.api.azureml.ms/registrymanagement/v1.0/registries/$registryName/discovery" `
                   -Headers @{ Authorization="Bearer $accessToken" }).registryFqdns
  • REST-API

Kommentar

Mer information om hur du använder Azure REST-API:er finns i Azure REST API-referensen.

  1. Hämta Azure-åtkomsttoken. Du kan använda följande Azure CLI-kommando för att hämta en token:

    az account get-access-token --query accessToken
    
  2. Använd en REST-klient, till exempel Curl, för att göra en GET-begäran till identifierings-URL:en. Använd åtkomsttoken som hämtades i föregående steg för auktorisering. I följande exempel ersätter du <region> med den region där registret finns och <registry_name> med namnet på registret. Ersätt <token> med den åtkomsttoken som hämtades i föregående steg:

    curl -X GET "https://<region>.api.azureml.ms/registrymanagement/v1.0/registries/<registry_name>/discovery" -H "Authorization: Bearer <token>" -H "Content-Type: application/json"
    

Gå vidare

Lär dig hur du delar modeller, komponenter och miljöer mellan arbetsytor med register.