Changement d’isolation réseau avec notre nouvelle plateforme d’API sur Azure Resource Manager
Dans cet article, vous allez découvrir les modifications apportées à l’isolation réseau avec notre nouvelle plateforme d’API v2 sur Azure Resource Manager (ARM) et son effet sur l’isolation réseau.
Qu’est-ce que la nouvelle plateforme d’API sur Azure Resource Manager (ARM)
Il existe deux types d’opérations utilisées par les API v1 et v2, Azure Resource Manager (ARM) et l’espace de travail Azure Machine Learning.
Avec l’API v1, la plupart des opérations utilisaient l’espace de travail. Pour la v2, nous avons déplacé la plupart des opérations pour utiliser un ARM public.
Version de l'API | ARM public | Dans le réseau virtuel de l’espace de travail |
---|---|---|
v1 | Opérations CRUD (Création, mise à jour et suppression) d’espace de travail et de calcul. | Autres opérations, comme les expériences. |
v2 | La plupart des opérations, comme l’espace de travail, le calcul, le magasin de données, le jeu de données, le travail, l’environnement, le code, le composant, les points de terminaison. | Opérations restantes. |
L’API v2 fournit une API cohérente à un emplacement unique. Vous pouvez utiliser plus facilement le contrôle d’accès en fonction du rôle Azure et Azure Policy pour les ressources avec l’API v2, car elle est basée sur Azure Resource Manager.
Azure Machine Learning CLI v2 utilise notre nouvelle plateforme d’API v2. De nouvelles fonctionnalités, comme les points de terminaison en ligne managés sont disponibles uniquement à l’aide de la plateforme d’API v2.
Quelles sont les modifications apportées à l’isolation réseau avec la v2
Comme mentionné dans la section précédente, il existe deux types d’opérations ; avec ARM et avec l’espace de travail. Avec l’API v1 héritée, la plupart des opérations utilisaient l’espace de travail. Avec l’API v1, l’ajout d’un point de terminaison privé à l’espace de travail fournissait une isolation réseau pour tout, à l’exception des opérations CRUD sur l’espace de travail ou les ressources de calcul.
Avec la nouvelle API v2, la plupart des opérations utilisent ARM. Par conséquent, l’activation d’un point de terminaison privé sur votre espace de travail ne fournit pas le même niveau d’isolation réseau. Les opérations qui utilisent ARM communiquent sur des réseaux publics et incluent l’ensemble des métadonnées (comme vos ID de ressource) et paramètres utilisés par l’opération. Par exemple, les paramètres.
Important
L’utilisation des communications ARM publiques est acceptable pour la plupart des utilisateurs :
- Les communications ARM publiques constituent la norme pour les opérations de gestion avec les services Azure. Par exemple, la création d’un compte Stockage Azure ou d’un réseau virtuel utilise ARM.
- Les opérations Azure Machine Learning n’exposent pas de données dans votre compte de stockage (ni dans un autre stockage dans le réseau virtuel) sur des réseaux publics. Un travail d’apprentissage qui s’exécute par exemple sur un cluster de calcul dans le réseau virtuel et utilise des données à partir d’un compte de stockage dans le réseau virtuel, accède en toute sécurité aux données directement via le réseau virtuel.
- Toute la communication avec ARM public est chiffrée à l’aide de TLS 1.2.
Si vous avez besoin de temps pour évaluer la nouvelle API v2 avant de l’adopter dans vos solutions d’entreprise ou si vous avez une stratégie d’entreprise qui interdit l’envoi de communications sur les réseaux publics, vous pouvez activer le paramètre v1_legacy_mode. Lorsqu’il est activé, ce paramètre désactive l’API v2 pour votre espace de travail.
Avertissement
L’activation de v1_legacy_mode peut vous empêcher d’utiliser les fonctionnalités fournies par l’API v2. Par exemple, certaines fonctionnalités d’Azure Machine Learning studio peuvent être indisponibles.
Scénarios et actions requises
Avertissement
Le paramètre v1_legacy_mode est disponible maintenant, mais la fonctionnalité de blocage de l’API v2 sera appliquée à partir de la semaine du 15 mai 2022.
Si vous n’envisagez pas d’utiliser un point de terminaison privé avec votre espace de travail, vous n’avez pas besoin d’activer le paramètre.
Si vous êtes d’accord pour que les opérations communiquent avec l’ARM public, vous n’avez pas besoin d’activer le paramètre.
Vous devez uniquement activer le paramètre si vous utilisez un point de terminaison privé avec l’espace de travail et que vous ne souhaitez pas autoriser les opérations avec ARM sur des réseaux publics.
Une fois que nous implémentons le paramètre, il sera appliqué rétroactivement aux espaces de travail existants à l’aide de la logique suivante :
Si vous disposez d’un espace de travail existant avec un point de terminaison privé, l’indicateur sera true.
Si vous disposez d’un espace de travail existant sans point de terminaison privé (espace de travail public), l’indicateur sera false.
Une fois le paramètre implémenté, la valeur par défaut de l’indicateur dépend de la version de l’API REST sous-jacente utilisée lorsque vous créez un espace de travail (avec un point de terminaison privé) :
- Si la version de l’API est antérieure à
2022-05-01
, l’indicateur est true par défaut. - Si la version de l’API est
2022-05-01
ou ultérieure, l’indicateur est false par défaut.
Important
Si vous souhaitez utiliser l’API v2 avec votre espace de travail, vous devez définir le paramètre v1_legacy_mode sur false.
Comment mettre à jour le paramètre v1_legacy_mode
Avertissement
Le paramètre v1_legacy_mode est disponible maintenant, mais la fonctionnalité de blocage de l’API v2 sera appliquée à partir de la semaine du 15 mai 2022.
Pour mettre à jour v1_legacy_mode, procédez comme suit :
Important
Si vous souhaitez désactiver la v2 de l’API, utilisez le kit de développement logiciel (SDK) Python d’Azure Machine Learning v1.
Pour désactiver v1_legacy_mode, utilisez Workspace.update et définissez v1_legacy_mode=false
.
from azureml.core import Workspace
ws = Workspace.from_config()
ws.update(v1_legacy_mode=False)
Important
Notez qu’il faut environ 30 minutes à une heure pour modifier le paramètre v1_legacy_mode de true à false pour qu’il soit répercuté dans l’espace de travail. Par conséquent, si vous définissez le paramètre sur false, mais que vous recevez une erreur indiquant que le paramètre a la valeur true dans une opération ultérieure, réessayez en attendant quelques minutes.