Clés gérées par le client pour Azure Machine Learning
Azure Machine Learning s’appuie sur plusieurs services Azure. Bien que les données stockées soient chiffrées avec des clés de chiffrement fournies par Microsoft, vous pouvez renforcer la sécurité en fournissant également vos propres clés (gérées par le client). Les clés que vous fournissez sont stockées dans Azure Key Vault. Vos données peuvent être stockées sur un ensemble d’autres ressources que vous gérez dans votre abonnement Azure, ou (préversion) côté serveur sur les ressources managées Microsoft.
En plus des clés gérées par le client (CMK), Azure Machine Learning fournit un indicateur hbi_workspace. L’activation de cet indicateur réduit la quantité de données que Microsoft collecte pour le diagnostic et permet un chiffrement supplémentaire dans les environnements gérés par Microsoft. Cet indicateur active également les comportements suivants :
- Lance le chiffrement du disque de travail local dans votre cluster de calcul Azure Machine Learning, si vous n’avez pas déjà créé de cluster dans cet abonnement. Sinon, vous devez ouvrir un ticket de support pour activer le chiffrement du disque de travail de vos clusters de calcul.
- Nettoie votre disque de travail local entre les tâches.
- Transmet de manière sécurisée les informations d’identification de votre compte de stockage, registre de conteneurs et compte SSH (Secure Shell) situés dans la couche d’exécution à vos clusters de calcul en utilisant votre coffre de clés.
L’indicateur hbi_workspace
n’affecte pas le chiffrement en transit. Il affecte uniquement le chiffrement au repos.
Prérequis
- Un abonnement Azure.
- Une instance Azure Key Vault. Le coffre de clés contient les clés utilisées pour chiffrer vos services.
Le coffre de clés doit activer la suppression réversible et la protection contre la suppression définitive. L’identité managée utilisée pour les services que vous sécurisez avec une clé gérée par le client doit avoir les autorisations suivantes sur le coffre de clés :
- Inclure la clé
- Ne pas inclure la clé
- Get
Par exemple, l’identité managée pour Azure Cosmos DB doit disposer de ces autorisations sur le coffre de clés.
Limites
- Une fois l’espace de travail créé, la clé de chiffrement gérée par le client pour les ressources dont dépend l’espace de travail peut uniquement être mise à jour vers une autre clé dans la ressource Azure Key Vault d’origine.
- À moins que vous n’utilisiez l’aperçu côté serveur, les données chiffrées sont stockées sur des ressources dans un groupe de ressources managé par Microsoft dans votre abonnement. Vous ne pouvez ni créer ces ressources à l’avance ni vous transférer la propriété de ces ressources. Le cycle de vie des données est géré indirectement via les API Azure Machine Learning quand vous créez des objets dans le service Azure Machine Learning.
- Vous ne pouvez pas supprimer les ressources gérées par Microsoft que vous utilisez pour les clés gérées par le client sans supprimer également votre espace de travail.
- Vous ne pouvez pas chiffrer le disque de système d’exploitation du cluster de calcul en utilisant vos clés gérées par le client. Vous devez utiliser des clés gérées par Microsoft.
Avertissement
Ne supprimez pas le groupe de ressources qui contient l’instance Azure Cosmos DB, ni les ressources créées automatiquement dans ce groupe. Si vous avez besoin de supprimer le groupe de ressources ou les services gérés par Microsoft qu’il contient, vous devez supprimer l’espace de travail Azure Machine Learning qui l’utilise. Les ressources du groupe de ressources sont supprimées quand vous supprimez l’espace de travail associé.
Clés gérées par le client
Quand vous n’utilisez pas de clé gérée par le client, Microsoft crée et gère les ressources dans un abonnement Azure qui lui appartient, et utilise une clé gérée par Microsoft pour chiffrer les données.
Quand vous utilisez une clé gérée par le client, ces ressources se trouvent dans votre abonnement Azure et sont chiffrées avec votre clé. Si ces ressources existent dans votre abonnement, Microsoft les gère. Ces ressources sont automatiquement créées et configurées quand vous créez votre espace de travail Azure Machine Learning.
Ces ressources gérées par Microsoft se trouvent dans un nouveau groupe de ressources Azure créé dans votre abonnement. Ce groupe de ressources est distinct du groupe de ressources de votre espace de travail. Il contient les ressources gérées par Microsoft avec lesquelles votre clé est utilisée. Le groupe de ressources est nommé en utilisant la formule <Azure Machine Learning workspace resource group name><GUID>
.
Conseil
Les unités de requête pour Azure Cosmos DB se mettent automatiquement à l’échelle en fonction des besoins.
Si votre espace de travail Azure Machine Learning utilise un point de terminaison privé, ce groupe de ressources contient également un réseau virtuel Azure géré par Microsoft. Ce réseau virtuel permet de sécuriser les communications entre les services managés et l’espace de travail. Vous ne pouvez pas fournir votre propre réseau virtuel pour l’utiliser avec les ressources gérées par Microsoft. Vous ne pouvez pas non plus modifier le réseau virtuel. Par exemple, vous ne pouvez pas changer la plage d’adresses IP qu’il utilise.
Important
Si votre abonnement n’a pas un quota suffisant pour ces services, une défaillance se produit.
Quand vous utilisez une clé gérée par le client, les coûts de votre abonnement sont plus élevés, car ces ressources se trouvent dans votre abonnement. Pour estimer les coûts, utilisez la calculatrice de prix Azure.
Chiffrement des données sur des ressources de calcul
Azure Machine Learning utilise des ressources de calcul pour entraîner et déployer des modèles Machine Learning. Le tableau suivant décrit les options de calcul et comment chacune chiffre les données :
Compute | Chiffrement |
---|---|
Azure Container Instances | Les données sont chiffrées avec une clé gérée par Microsoft ou une clé gérée par le client. Pour plus d’informations, consultez Chiffrer les données de déploiement. |
Azure Kubernetes Service | Les données sont chiffrées avec une clé gérée par Microsoft ou une clé gérée par le client. Pour plus d’informations, consultez Apporter vos propres clés avec des disques Azure dans Azure Kubernetes Service. |
Instance de calcul Azure Machine Learning | Le disque de travail local est chiffré si vous activez l’indicateur hbi_workspace pour l’espace de travail. |
Cluster de calcul Azure Machine Learning | Le disque de système d’exploitation est chiffré dans le Stockage Azure avec des clés gérées par Microsoft. Le disque temporaire est chiffré si vous activez l’indicateur hbi_workspace pour l’espace de travail. |
Compute | Chiffrement |
---|---|
Azure Kubernetes Service | Les données sont chiffrées avec une clé gérée par Microsoft ou une clé gérée par le client. Pour plus d’informations, consultez Apporter vos propres clés avec des disques Azure dans Azure Kubernetes Service. |
Instance de calcul Azure Machine Learning | Le disque de travail local est chiffré si vous activez l’indicateur hbi_workspace pour l’espace de travail. |
Cluster de calcul Azure Machine Learning | Le disque de système d’exploitation est chiffré dans le Stockage Azure avec des clés gérées par Microsoft. Le disque temporaire est chiffré si vous activez l’indicateur hbi_workspace pour l’espace de travail. |
Cluster de calcul
Les clusters de calcul ont un stockage sur le disque de système d’exploitation local et peuvent monter les données des comptes de stockage dans votre abonnement pendant le travail. Quand vous montez des données de votre propre compte de stockage dans un travail, vous pouvez activer des clés gérées par le client sur ces comptes de stockage pour le chiffrement.
Le disque de système d’exploitation de chaque nœud de calcul stocké dans le Stockage Azure est toujours chiffré avec des clés gérées par Microsoft dans les comptes de stockage Azure Machine Learning, et non avec des clés gérées par le client. Cette cible de calcul étant éphémère, les données stockées sur le disque de système d’exploitation sont supprimées après le scale-down du cluster. Les clusters effectuent généralement un scale-down quand aucun travail n’est mis en file d’attente, que la mise à l’échelle automatique est activée et que le nombre minimum de nœuds est défini sur zéro. La machine virtuelle sous-jacente est déprovisionnée et le disque du système d’exploitation supprimé.
Azure Disk Encryption n’est pas pris en charge pour le disque de système d’exploitation. Chaque machine virtuelle dispose également d’un disque temporaire local pour les opérations de système d’exploitation. Si vous le souhaitez, vous pouvez utiliser le disque pour indexer les données d’entraînement. Si vous créez l’espace de travail avec le paramètre hbi_workspace
défini sur TRUE
, le disque temporaire est chiffré. Cet environnement a une courte durée de vie (le temps du travail uniquement), et la prise en charge du chiffrement est limitée seulement aux clés gérées par le système.
Instance de calcul
Le disque de système d’exploitation d’une instance de calcul est chiffré avec des clés gérées par Microsoft dans les comptes de stockage Azure Machine Learning. Si vous créez l’espace de travail avec le paramètre hbi_workspace
défini sur TRUE
, le disque temporaire local situé sur l’instance de calcul est chiffré avec des clés gérées par Microsoft. Le chiffrement avec des clés gérées par le client n’est pas pris en charge pour les disques de système d’exploitation et les disques temporaires.
Stockage des métadonnées chiffrées de l’espace de travail
Lorsque vous apportez votre propre clé de chiffrement, les métadonnées de service sont stockées sur des ressources dédiées dans votre abonnement Azure. Microsoft crée dans ce but un groupe de ressources distinct : azureml-rg-workspacename_GUID dans votre abonnement. Seul Microsoft peut modifier les ressources de ce groupe de ressources managé.
Microsoft crée les ressources suivantes pour stocker les métadonnées de votre espace de travail :
Service | Utilisation | Exemple de données |
---|---|---|
Azure Cosmos DB | Stocke les données de l’historique des travaux, les métadonnées de calcul et les métadonnées des ressources. | Les données sont notamment : nom du travail, état, numéro de séquence et état ; nom du cluster de calcul, nombre de cœurs et nombre de nœuds ; noms/étiquettes de magasin de données et descriptions des ressources comme les modèles ; noms d’étiquettes de données. |
Azure AI Search | Stocke les index qui aident à interroger votre contenu Machine Learning. | Ces index sont basés sur les données stockées dans Azure Cosmos DB. |
Stockage Azure | Stocke les métadonnées liées aux données des pipelines Azure Machine Learning. | Les données sont notamment : noms des pipelines du concepteur, disposition des pipelines et propriétés d’exécution. |
Du point de vue de la gestion de cycle de vie des données, les données des ressources précédentes sont créées et supprimées quand vous créez et supprimez les objets correspondants dans Azure Machine Learning.
Votre espace de travail Azure Machine Learning lit et écrit les données en utilisant son identité managée. Cette identité a accès aux ressources grâce à une attribution de rôle (contrôle d’accès en fonction du rôle Azure) sur les ressources de données. La clé de chiffrement que vous fournissez est utilisée pour chiffrer les données stockées sur les ressources gérées par Microsoft. Au moment du runtime,elle est également utilisée pour créer des index pour Azure AI Search.
Des contrôles réseau supplémentaires sont configurés quand vous créez un point de terminaison de liaison privée sur votre espace de travail pour autoriser la connectivité entrante. Cette configuration comprend la création d’une connexion de point de terminaison de liaison privée à l’instance Azure Cosmos DB. L’accès réseau est limité uniquement aux services Microsoft approuvés.
(Préversion) Chiffrement côté service des métadonnées
Une nouvelle architecture pour l’espace de travail de chiffrement de clé géré par le client est disponible en préversion. Elle réduit les coûts par rapport à l’architecture actuelle et atténue la probabilité de conflits de stratégie Azure. Dans ce nouveau modèle, les données chiffrées sont stockées côté service sur des ressources managées par Microsoft plutôt que votre abonnement.
Les données précédemment stockées dans Azure Cosmos DB (dans votre abonnement) sont stockées dans des ressources managées multi-locataires par Microsoft avec le chiffrement au niveau du document au moyen de votre clé de chiffrement. Les index de recherche précédemment stockés dans Recherche Azure AI (dans votre abonnement) sont stockés sur des ressources managées par Microsoft et approvisionnées qui vous sont dédiées par espace de travail. Le coût de l’instance de recherche Azure AI est facturé sous votre espace de travail Azure Machine Learning dans Microsoft Cost Management.
Les métadonnées des pipelines précédemment stockées dans un compte de stockage, dans un groupe de ressources managé, sont désormais stockées sur le compte de stockage de votre abonnement associé à l’espace de travail Azure Machine Learning. Cette ressource du Stockage Azure étant gérée séparément dans votre abonnement, vous êtes responsable de la configuration de ses paramètres de chiffrement.
Pour choisir cette préversion, définissez enableServiceSideCMKEncryption
sur une API REST ou dans votre modèle Bicep ou Resource Manager. Vous pouvez également utiliser le portail Azure.
Remarque
Pendant cette préversion, les fonctionnalités de rotation des clés et d’étiquetage des données ne sont pas prises en charge. Le chiffrement côté serveur n’est actuellement pas pris en charge en référence à un coffre Azure Key Vault pour le stockage de votre clé de chiffrement dont l’accès au réseau public est désactivé.
Pour des modèles qui créent un espace de travail avec le chiffrement côté service des métadonnées, consultez
- Modèle Bicep pour la création d’un espace de travail par défaut.
- Modèle Bicep pour la création d’un espace de travail hub.
Indicateur hbi_workspace
Vous pouvez définir l’indicateur hbi_workspace
uniquement quand vous créez un espace de travail. Vous ne pouvez pas le changer pour un espace de travail existant.
Quand vous définissez cet indicateur sur TRUE
, la résolution des problèmes peut être plus compliquée, car il y a moins de données de télémétrie envoyées à Microsoft. La visibilité des taux de réussite ou des types de problèmes est ainsi réduite. Microsoft risque de ne pas pouvoir réagir de manière proactive quand cet indicateur est TRUE
.
Pour activer l’indicateur hbi_workspace
pendant la création d’un espace de travail Azure Machine Learning, suivez les étapes indiquées dans l’un des articles suivants :
- Créer et gérer un espace de travail en utilisant le portail Azure ou le SDK Python
- Créer et gérer un espace de travail avec Azure CLI
- Créer un espace de travail avec HashiCorp Terraform
- Créer un espace de travail avec des modèles Azure Resource Manager