Administration des données

Découvrez comment gérer l’accès aux données et comment s’authentifier dans Azure Machine Learning

S’APPLIQUE À :Extension Azure CLI v2 (actuelle)Kit de développement logiciel (SDK) Python azure-ai-ml v2 (version actuelle)

Important

Cet article est destiné aux administrateurs Azure qui souhaitent créer l’infrastructure requise pour une solution Azure Machine Learning.

Authentification des données basée sur les informations d’identification

En général, l’authentification des données basée sur les informations d’identification à partir de studio implique ces vérifications :

  • L’utilisateur qui accède aux données à partir du magasin de données basé sur les informations d’identification a-t-il été affecté à un rôle RBAC contenant Microsoft.MachineLearningServices/workspaces/datastores/listsecrets/action ?
    • Cette autorisation est requise pour récupérer les informations d’identification à partir du magasin de données pour le compte de l’utilisateur.
  • Les informations d’identification stockées (principal de service, clé de compte ou jeton sas) ont-elles accès à la ressource de données ?

Authentification des données basée sur l’identité

En général, l’authentification des données basée sur l’identité à partir de studio implique ces vérifications :

  • Quel utilisateur souhaite accéder aux ressources ?
    • En fonction du contexte de l’accès aux données, différents types d’authentification sont disponibles, par exemple :
      • Identité de l’utilisateur
      • Identité managée de calcul
      • Identité managée de l’espace de travail
    • Les travaux, y compris l’option de jeu de données « Générer un profil », s’exécutent sur une ressource de calcul de votre abonnement et accèdent aux données à partir de cet emplacement. C’est l’identité managée de calcul qui a besoin d’une autorisation d’accès au stockage, plutôt que l’identité de l’utilisateur qui soumet le travail.
    • Pour l’authentification basée sur une identité utilisateur, vous devez savoir quel utilisateur spécifique a essayé d’accéder à la ressource de stockage. Pour plus d’informations sur l’authentification utilisateur, consultez Configurer l’authentification pour des ressources et workflows Azure Machine Learning. Pour plus d’informations sur l’authentification au niveau du service, consultez Configurer l’authentification entre Azure Machine Learning et d’autres services.
  • Cet utilisateur dispose-t-il de l’autorisation de lecture nécessaire ?
    • L’identité de l’utilisateur, l’identité managée de calcul, etc., disposent-elles des autorisations nécessaires pour cette ressource de stockage ? Les autorisations sont accordées à l’aide du contrôle d’accès en fonction du rôle d’Azure (Azure RBAC).
    • Le Lecteur du compte de stockage lit les métadonnées de stockage.
    • Le Lecteur des données Blob du stockage lit et répertorie les conteneurs et objets blob du stockage Azure.
    • Vous trouverez ici d’autres rôles intégrés Azure pour le stockage.
  • Cet utilisateur dispose-t-il de l’autorisation d’écriture nécessaire ?
    • L’identité de l’utilisateur, l’identité managée de calcul, etc., disposent-elles des autorisations nécessaires pour cette ressource de stockage ? Les autorisations sont accordées à l’aide du contrôle d’accès en fonction du rôle d’Azure (Azure RBAC).
    • Le Lecteur du compte de stockage lit les métadonnées de stockage.
    • Le Contributeur aux données Blob du stockage lit, écrit et supprime des conteneurs et objets blob du stockage Azure.
    • Vous trouverez ici d’autres rôles intégrés Azure pour le stockage.

Autres vérifications générales pour l’authentification

  • D’où provient l’accès ?
    • Utilisateur : l’adresse IP du client se trouve-t-elle dans la plage de réseau virtuel/sous-réseau ?
    • Espace de travail : l’espace de travail est-il public, ou a-t-il un point de terminaison privé situé dans un réseau virtuel/sous-réseau ?
    • Stockage : le stockage permet-il un accès public, ou limite-t-il l'accès via un point de terminaison de service ou un point de terminaison privé ?
  • Quelle sera l’opération effectuée ?
    • Azure Machine Learning gère les opérations de création, lecture, mise à jour et suppression (CRUD) sur un magasin de données/jeu de données.
    • Les opérations d’archivage sur les ressources de données dans studio nécessitent cette opération RBAC : Microsoft.MachineLearningServices/workspaces/datasets/registered/delete
    • Les appels d’accès aux données (par exemple, aperçu ou schéma) accèdent au stockage sous-jacent et nécessitent des autorisations supplémentaires.
  • Cette opération s’exécutera-t-elle dans les ressources de calcul de votre abonnement Azure ou dans des ressources hébergées dans un abonnement Microsoft ?
    • Tous les appels aux services de jeu de données et de magasin de données (à l’exception de l’option « Générer un profil ») utilisent des ressources hébergées dans un abonnement Microsoft pour exécuter les opérations.
    • Les travaux, y compris l’option de jeu de données « Générer un profil », s’exécutent sur une ressource de calcul de votre abonnement et accèdent aux données à partir de cet emplacement. C’est l’identité de calcul qui a besoin d’une autorisation d’accès au stockage, plutôt que l’identité de l’utilisateur qui soumet le travail.

Ce schéma illustre le déroulement général d’un appel d’accès aux données. Ici, un utilisateur tente d’effectuer un appel d’accès aux données par le biais d’un espace de travail Machine Learning, sans utiliser de ressource de calcul.

Diagramme du flux logique au moment de l’accès aux données.

Scénarios et identités

Ce tableau liste les identités à utiliser pour des scénarios spécifiques :

Scénario Utiliser l’espace de travail
Managed Service Identity (MSI)
Identité à utiliser
Accès depuis l’interface utilisateur Oui MSI d’espace de travail
Accès depuis l’interface utilisateur Non Identité de l’utilisateur
Accès depuis le travail Oui/Non MSI de calcul
Accès depuis le notebook Oui/Non Identité de l’utilisateur

L’accès aux données est complexe et implique de nombreux éléments. Par exemple, l’accès aux données à partir d’Azure Machine Learning studio est différent par rapport à l’utilisation du kit SDK pour l’accès aux données. Lorsque vous utilisez le kit SDK dans votre environnement de développement local, vous accédez directement aux données dans le cloud. Lorsque vous utilisez studio, vous n’accédez pas toujours directement au magasin de données à partir de votre client. ML studio s’appuie sur l’espace de travail pour accéder aux données en votre nom.

Conseil

Pour accéder aux données en dehors d’Azure Machine Learning, par exemple avec l’Explorateur Stockage Azure, cet accès dépend probablement de l’identité de l’utilisateur. Pour obtenir des informations spécifiques, consultez la documentation relative à l’outil ou au service que vous utilisez. Pour plus d’informations sur le fonctionnement d’Azure Machine Learning avec les données, consultez Configurer l’authentification entre Azure Machine Learning et d’autres services.

Compte Stockage Azure

Lorsque vous utilisez un compte Stockage Azure à partir d’Azure Machine Learning studio, vous devez ajouter l’identité managée de l’espace de travail à ces rôles RBAC Azure pour le compte de stockage :

  • Lecteur de données blob
  • Si le compte de stockage utilise un point de terminaison privé pour se connecter au réseau virtuel, vous devez accorder à l’identité managée le rôle de Lecteur pour le point de terminaison privé du compte de stockage.

Pour plus d’informations, consultez Utiliser Azure Machine Learning studio dans un Réseau virtuel Azure.

Les sections suivantes expliquent les limitations liées à l’utilisation d’un compte Stockage Azure avec votre espace de travail dans un réseau virtuel.

Sécuriser la communication avec les comptes Stockage Azure

Pour sécuriser la communication entre Azure Machine Learning et les comptes Stockage Azure, configurez le stockage de façon à Accorder l’accès aux services Azure approuvés.

Pare-feu de Stockage Azure

Lorsqu’un compte Stockage Azure se trouve derrière un réseau virtuel, le pare-feu du stockage peut normalement être utilisé pour permettre à votre client de se connecter directement sur Internet. Toutefois, lors de l’utilisation de studio, votre client ne se connecte pas au compte de stockage. Le service Azure Machine Learning qui effectue la requête se connecte au compte de stockage. L’adresse IP du service n’est pas documentée, et elle change fréquemment. L’activation du pare-feu du stockage ne permet pas au ML studio d'accéder au compte de stockage dans une configuration de réseau virtuel.

Type de point de terminaison de Stockage Azure

Lorsque l’espace de travail utilise un point de terminaison privé et que le compte de stockage est également dans le réseau virtuel, des exigences de validation supplémentaires sont requises lors de l’utilisation de studio :

  • Si le compte de stockage utilise un point de terminaison de service, le point de terminaison privé de l’espace de travail et le point de terminaison du service de stockage doivent se trouver dans le même sous-réseau du réseau virtuel.
  • Si le compte de stockage utilise un point de terminaison privé, le point de terminaison privé de l’espace de travail et le point de terminaison privé du stockage doivent se trouver dans le même réseau virtuel. Dans ce cas, ils peuvent se trouver dans des sous-réseaux différents.

Azure Data Lake Storage Gen1

Lorsque vous utilisez Azure Data Lake Storage Gen1 en tant que magasin de données, vous ne pouvez utiliser que des listes de contrôle d’accès de type POSIX. Vous pouvez accorder à l’identité managée de l’espace de travail l’accès aux ressources, comme pour tout autre principal de sécurité. Pour plus d’informations, consultez Contrôle d’accès dans Azure Data Lake Storage Gen1.

Azure Data Lake Storage Gen2

Lorsque vous utilisez Azure Data Lake Storage Gen2 en tant que magasin de données, vous pouvez utiliser des listes de contrôle d’accès (ACL) de type Azure RBAC et POSIX pour contrôler l’accès aux données au sein d’un réseau virtuel.

Pour utiliser RBAC Azure, suivez les étapes décrites dans la section Magasin de données : compte Stockage Azure de cet article. Data Lake Storage Gen2 est basé sur le service Stockage Azure ; par conséquent, les mêmes étapes s'appliquent lorsque vous utilisez Azure RBAC.

Pour utiliser des listes de contrôle d’accès, vous pouvez accorder l’accès à l’identité managée de l’espace de travail comme pour tout autre principal de sécurité. Pour plus d’informations, consultez Listes de contrôle d’accès sur les fichiers et répertoires.

Étapes suivantes

Pour plus d’informations sur l’activation de studio dans un réseau, consultez Utiliser Azure Machine Learning studio dans un réseau virtuel Azure.