Sécuriser un environnement d’inférence Azure Machine Learning à l’aide de réseaux virtuels
Dans cet article, vous allez apprendre à sécuriser les environnements d’inférence (points de terminaison en ligne) à l’aide d’un réseau virtuel dans Azure Machine Learning. Il existe deux options d’inférence qui peuvent être sécurisées à l’aide d’un réseau virtuel :
Points de terminaison en ligne managés Azure Machine Learning
Conseil
Microsoft recommande d’utiliser un réseau virtuel managé Azure Machine Learning au lieu des étapes décrites dans cet article pour sécuriser les points de terminaisons managés en ligne. Avec un réseau virtuel managé, Azure Machine Learning gère le travail d’isolement réseau pour votre espace de travail et vos calculs managés. Vous pouvez également ajouter des points de terminaison privés pour les ressources dont l’espace de travail a besoin, par exemple un compte de stockage Azure. Pour plus d’informations, consultez Isolation de réseau gérée d’espace de travail.
Azure Kubernetes Service
Conseil
Cet article fait partie d’une série sur la sécurisation d’un workflow Azure Machine Learning. Consultez les autres articles de cette série :
- Présentation du réseau virtuel
- Sécuriser les ressources d’espace de travail
- Sécuriser l’environnement d’entraînement
- Activer les fonctionnalités de Studio
- Utiliser le DNS personnalisé
- Utiliser un pare-feu
Pour obtenir un tutoriel sur la création d’un espace de travail sécurisé, consultez le Tutoriel : Créer un espace de travail sécurisé ou les articles Modèle Bicep ou Modèle Terraform.
Prérequis
Lisez l’article Vue d’ensemble de la sécurité réseau pour comprendre les scénarios courants des réseaux virtuels et l’architecture globale des réseaux virtuels.
Un réseau virtuel et un sous-réseau existants utilisés pour sécuriser l’espace de travail Azure Machine Learning.
Pour déployer des ressources dans un réseau virtuel ou un sous-réseau, votre compte d’utilisateur doit disposer d’autorisations pour les actions suivantes dans le contrôle d’accès en fonction du rôle Azure (Azure RBAC) :
- « Microsoft.Network/*/read » sur la ressource de réseau virtuel. Cette autorisation n’est pas nécessaire pour les déploiements de modèles Azure Resource Manager (ARM).
- « Microsoft.Network/virtualNetworks/join/action » sur la ressource de réseau virtuel.
- "Microsoft.Network/virtualNetworks/subnets/join/action" sur la ressource de sous-réseau.
Pour plus d’informations sur Azure RBAC avec la mise en réseau, consultez Rôles intégrés pour la mise en réseau.
- Si vous utilisez Azure Kubernetes Service (AKS), vous devez disposer d’un cluster AKS existant sécurisé, comme décrit dans l’article sur l’environnement d’inférence Azure Kubernetes Service sécurisé.
Sécuriser des points de terminaison en ligne managés
Pour plus d’informations sur la sécurisation des points de terminaison en ligne managés, consultez l’article Utiliser l’isolement réseau avec les points de terminaison en ligne managés.
Points de terminaison en ligne Azure Kubernetes Service sécurisés
Pour utiliser un cluster Azure Kubernetes Service pour l’inférence sécurisée, procédez comme suit :
Créez et configurez un environnement d’inférence Kubernetes sécurisé.
Déployez l’extension Azure Machine Learning.
Le déploiement de modèle avec le point de terminaison en ligne Kubernetes peut être effectué à l’aide de l’interface CLI v2, du SDK Python v2 et de l’interface utilisateur de Studio.
- CLI v2 – https://github.com/Azure/azureml-examples/tree/main/cli/endpoints/online/kubernetes
- SDK Python V2 – https://github.com/Azure/azureml-examples/tree/main/sdk/python/endpoints/online/kubernetes
- Interface utilisateur de Studio : suivez les étapes décrites dans Déploiement de point de terminaison en ligne managé via Studio. Après avoir entré le nom du point de terminaison, sélectionnez Kubernetes comme type de calcul au lieu de Managé.
Limitez la connectivité sortante à partir du réseau virtuel
Si vous ne souhaitez pas utiliser les règles de trafic sortant par défaut et souhaitez limiter l’accès sortant de votre réseau virtuel, vous devez autoriser l’accès à Azure Container Registry. Par exemple, assurez-vous que vos groupes de sécurité réseau (NSG) contiennent une règle qui autorise l’accès à l’étiquette de service AzureContainerRegistry.RegionName, où {RegionName} correspond au nom d’une région Azure.
Étapes suivantes
Cet article fait partie d’une série sur la sécurisation d’un workflow Azure Machine Learning. Consultez les autres articles de cette série :