Proteggere un ambiente di inferenza di Azure Machine Learning con reti virtuali
Il presente articolo illustra come proteggere gli ambienti di inferenza (endpoint online) con una rete virtuale in Azure Machine Learning. Esistono due opzioni di inferenza che possono essere protette tramite una rete virtuale:
Endpoint online gestiti di Azure Machine Learning
Suggerimento
Microsoft consiglia di utilizzare una rete virtuale gestita di Azure Machine Learning, invece di seguire i passaggi indicati in questo articolo per la protezione degli endpoint online gestiti. Con una rete virtuale gestita, Azure Machine Learning si occupa del processo di isolamento della rete per l'area di lavoro e i calcoli gestiti. È anche possibile aggiungere endpoint privati per le risorse necessarie per l'area di lavoro, ad esempio l'account di archiviazione di Azure. Per altre informazioni, vedere Isolamento network gestito dell'area di lavoro.
Servizio Azure Kubernetes
Suggerimento
Questo articolo fa parte di una serie di articoli sulla protezione di un flusso di lavoro di Azure Machine Learning. Vedi gli altri articoli di questa serie:
- Panoramica della rete virtuale
- Proteggere le risorse dell'area di lavoro
- Proteggere l'ambiente di training
- Abilitare la funzione Studio
- Usare DNS personalizzato
- Usare un firewall
Per un'esercitazione sulla creazione di un'area di lavoro sicura, vedere Esercitazione: Creare un'area di lavoro sicura, Modello Bicep o Modello Terraform.
Prerequisiti
Per comprendere gli scenari di rete virtuale comuni e l'architettura complessiva della rete virtuale, leggere l'articolo Panoramica della sicurezza di rete.
Una rete virtuale e una subnet esistenti utilizzate per proteggere l'area di lavoro di Azure Machine Learning.
Per distribuire le risorse in una rete virtuale o in una subnet, l'account utente deve disporre delle autorizzazioni per eseguire le azioni seguenti nel controllo degli accessi in base al ruolo di Azure:
- "Microsoft.Network/*/read" nella risorsa della rete virtuale. Questa autorizzazione non è necessaria per le distribuzioni di modelli di Azure Resource Manager (ARM).
- "Microsoft.Network/virtualNetworks/join/action" nella risorsa della rete virtuale.
- "Microsoft.Network/virtualNetworks/subnets/join/action" nella risorsa della subnet.
Per altre informazioni sul controllo degli accessi in base al ruolo di Azure con la rete, vedere Ruoli predefiniti di rete
- Se si usa il servizio Azure Kubernetes, è necessario disporre di un cluster del servizio Azure Kubernetes esistente protetto come descritto nell'articolo Ambiente di inferenza del servizio Azure Kubernetes protetto.
Proteggere gli endpoint online gestiti
Per informazioni sulla protezione degli endpoint online gestiti, vedere l'articolo Usare l'isolamento di rete con endpoint online gestiti.
Proteggere gli endpoint online del servizio Azure Kubernetes
Per usare il cluster del servizio Azure Kubernetes per l'inferenza sicura, seguire questa procedura:
Creare o configurare un ambiente di inferenza Kubernetes sicuro.
Distribuire l’estensione di Azure Machine Learning.
La distribuzione del modello con l'endpoint online Kubernetes può essere eseguita usando l'interfaccia della riga di comando v2, Python SDK v2 e l'interfaccia utente di Studio.
- Interfaccia della riga di comando v2 - https://github.com/Azure/azureml-examples/tree/main/cli/endpoints/online/kubernetes
- Python SDK V2 - https://github.com/Azure/azureml-examples/tree/main/sdk/python/endpoints/online/kubernetes
- Interfaccia utente di Studio: seguire la procedura descritta in distribuzione di endpoint online gestiti tramite Studio. Dopo aver immesso il Nome dell'endpoint, selezionare Kubernetes come tipo di calcolo anziché Gestito.
Limitare la connettività in uscita dalla rete virtuale
Se vuoi usare le regole in uscita predefinite e vuoi limitare l'accesso in uscita della rete virtuale, è necessario consentire l'accesso al Registro Azure Container. Ad esempio, assicurati che i gruppi di sicurezza di rete (NSG) contengano una regola che consenta l'accesso al tag del servizioAzureContainerRegistry.RegionName dove '{RegionName} è il nome di un'area di Azure.
Passaggi successivi
Il presente articolo fa parte di una serie di articoli sulla protezione del flusso di lavoro di Azure Machine Learning. Vedi gli altri articoli di questa serie: