Partager via


Contrôle d’accès en fonction du rôle dans Azure AI Studio

Cet article explique comment gérer l’accès (autorisation) à un hub Azure AI Studio. Le contrôle d’accès en fonction du rôle Azure (Azure RBAC) est utilisé pour gérer l’accès aux ressources Azure, comme la possibilité de créer des ressources ou d’utiliser celles qui existent déjà. Les utilisateurs de votre Microsoft Entra ID reçoivent des rôles spécifiques, qui octroient l’accès aux ressources. Azure propose des rôles intégrés et permet de créer des rôles personnalisés.

Avertissement

L’application de certains rôles peut limiter les fonctionnalités de l’interface utilisateur dans Azure AI Studio pour d’autres utilisateurs. Par exemple, si le rôle d’un utilisateur ne permet pas de créer une instance de calcul, l’option de création d’une instance de calcul n’est pas disponible dans Studio. Ce comportement est attendu et empêche l’utilisateur de tenter des opérations qui retourneraient une erreur d’accès refusé.

Hub et projet AI Studio

Dans Azure AI Studio, il existe deux niveaux d’accès : le hub et le projet. Le hub héberge l’infrastructure (y compris la configuration du réseau virtuel, les clés gérées par le client, les identités managées et les stratégies), ainsi que l’emplacement auquel vous configurez vos services Azure AI. L’accès au hub peut vous permettre de modifier l’infrastructure, ainsi que de créer des hubs et des projets. Un projet est un sous-ensemble du hub qui joue le rôle d’espace de travail vous permettant de créer et de déployer des systèmes IA. Dans un projet, vous pouvez développer des flux, déployer des modèles et gérer des ressources de projet. L’accès au projet vous permet de développer l’IA de bout en bout tout en tirant parti de la configuration de l’infrastructure sur le hub.

Diagramme de la relation entre les ressources AI Studio.

Un des principaux avantages de la relation entre le hub et le projet est que les développeurs peuvent créer leurs propres projets qui héritent des paramètres de sécurité du hub. Vous pouvez également avoir des développeurs qui contribuent à un projet et ne peuvent pas en créer de nouveaux.

Rôles par défaut pour le hub

Le hub AI Studio a des rôles intégrés disponibles par défaut.

Voici un tableau reprenant les rôles intégrés et les autorisations correspondantes pour le hub :

Rôle Description
Propriétaire Accès complet au hub, notamment la possibilité de gérer et de créer des hubs et d’attribuer des autorisations. Ce rôle est automatiquement attribué au créateur du hub.
Contributeur L’utilisateur dispose d’un accès complet au hub, notamment la possibilité de créer des hubs. Il ne peut toutefois pas gérer les autorisations liées au hub sur la ressource déjà existante.
Développeur Azure AI Effectuer toutes les actions, à l’exception de la création de hubs et de la gestion des autorisations du hub. Par exemple, les utilisateurs peuvent créer des projets, des calculs et des connexions. Les utilisateurs peuvent attribuer des autorisations au sein de leur projet. Les utilisateurs peuvent interagir avec des ressources Azure AI existantes telles qu’Azure OpenAI, Azure AI Search et Azure AI services.
Opérateur de déploiement d’inférence Azure AI Effectuez toutes les actions requises pour créer un déploiement de ressources au sein d’un groupe de ressources.
Lecteur Accès en lecture seule au hub. Ce rôle est automatiquement attribué à tout les membres du projet au sein du hub.

La principale différence entre le rôle Contributeur et le rôle Développeur Azure AI est la possibilité de créer des hubs. Si vous ne souhaitez pas que les utilisateurs puissent créer des hubs (en raison du quota, du coût ou de la gestion du nombre de hubs dont vous disposez), attribuez le rôle Développeur Azure AI.

Seuls les rôles Propriétaire et Contributeur vous permettent de créer un hub. À ce stade, les rôles personnalisés ne vous autorisent pas à créer des hubs.

Rôle Développeur Azure AI

L’ensemble complet d’autorisations pour le nouveau rôle « Développeur Azure AI » est le suivant :

{
    "Permissions": [ 
        { 
        "Actions": [
            "Microsoft.MachineLearningServices/workspaces/*/read",
            "Microsoft.MachineLearningServices/workspaces/*/action",
            "Microsoft.MachineLearningServices/workspaces/*/delete",
            "Microsoft.MachineLearningServices/workspaces/*/write",
            "Microsoft.MachineLearningServices/locations/*/read",
            "Microsoft.Authorization/*/read",
            "Microsoft.Resources/deployments/*"
        ],
    
        "NotActions": [
            "Microsoft.MachineLearningServices/workspaces/delete",
            "Microsoft.MachineLearningServices/workspaces/write",
            "Microsoft.MachineLearningServices/workspaces/listKeys/action",
            "Microsoft.MachineLearningServices/workspaces/hubs/write",
            "Microsoft.MachineLearningServices/workspaces/hubs/delete",
            "Microsoft.MachineLearningServices/workspaces/featurestores/write",
            "Microsoft.MachineLearningServices/workspaces/featurestores/delete"
        ], 
        "DataActions": [ 
            "Microsoft.CognitiveServices/accounts/OpenAI/*", 
            "Microsoft.CognitiveServices/accounts/SpeechServices/*", 
            "Microsoft.CognitiveServices/accounts/ContentSafety/*" 
        ], 
        "NotDataActions": [], 
        "Condition": null, 
        "ConditionVersion": null 
        } 
    ] 
}

Si le rôle Développeur Azure AI intégré ne répond pas à vos besoins, vous pouvez créer un rôle personnalisé.

Rôles par défaut pour les projets

Les projets dans AI Studio ont des rôles intégrés disponibles par défaut.

Voici un tableau reprenant les rôles intégrés et les autorisations correspondantes pour le projet :

Rôle Description
Propriétaire Accès complet au projet, notamment la possibilité d’attribuer des autorisations aux utilisateurs du projet.
Contributeur L’utilisateur à un accès complet au projet, mais ne peut pas attribuer des autorisations aux utilisateurs du projet.
Développeur Azure AI L’utilisateur peut effectuer la plupart des actions, notamment créer des déploiements, mais ne peut pas attribuer d’autorisations aux utilisateurs du projet.
Opérateur de déploiement d’inférence Azure AI Effectuez toutes les actions requises pour créer un déploiement de ressources au sein d’un groupe de ressources.
Lecteur Accès en lecture seule au projet.

Quand un utilisateur reçoit une autorisation d’accès à un projet (par exemple, au moyen de la gestion des autorisations AI Studio), deux autres rôles sont automatiquement attribués à l’utilisateur. Le premier rôle est Lecteur sur le hub. Le deuxième rôle est le rôle Opérateur de déploiement d’inférence, qui permet à l’utilisateur de créer des déploiements sur le groupe de ressources dans lequel se trouve le projet. Ce rôle se compose de ces deux autorisations : "Microsoft.Authorization/*/read" et "Microsoft.Resources/deployments/*".

Pour terminer le développement et le déploiement de l’IA de bout en bout, les utilisateurs n’ont besoin que de ces deux rôles attribués automatiquement et soit du rôle Contributeur ou du rôle Développeur Azure AI sur un projet.

Les autorisations minimales nécessaires pour créer un projet sont réunies dans un rôle qui a l’action autorisée Microsoft.MachineLearningServices/workspaces/hubs/join sur le hub. Le rôle intégré Développeur Azure AI a cette autorisation.

Rôle Administrateur Azure AI

Avant le 19/11/2024, l’identité managée affectée par le système créée pour le hub a été automatiquement affectée au rôle Contributeur pour le groupe de ressources qui contient le hub et les projets. Les hubs créés après cette date ont attribué l’identité managée affectée par le système au rôle Administrateur Azure AI. Ce rôle est plus limité aux autorisations minimales nécessaires pour que l’identité managée effectue ses tâches.

Le rôle Administrateur Azure AI est actuellement en préversion publique.

Important

Les éléments marqués (préversion) dans cet article sont actuellement en préversion publique. Cette préversion est fournie sans contrat de niveau de service, nous la déconseillons dans des charges de travail de production. Certaines fonctionnalités peuvent être limitées ou non prises en charge. Pour plus d’informations, consultez Conditions d’Utilisation Supplémentaires relatives aux Évaluations Microsoft Azure.

Le rôle Administrateur Azure AI dispose des autorisations suivantes :

{
    "permissions": [
        {
            "actions": [
                "Microsoft.Authorization/*/read",
                "Microsoft.CognitiveServices/*",
                "Microsoft.ContainerRegistry/registries/*",
                "Microsoft.DocumentDb/databaseAccounts/*",
                "Microsoft.Features/features/read",
                "Microsoft.Features/providers/features/read",
                "Microsoft.Features/providers/features/register/action",
                "Microsoft.Insights/alertRules/*",
                "Microsoft.Insights/components/*",
                "Microsoft.Insights/diagnosticSettings/*",
                "Microsoft.Insights/generateLiveToken/read",
                "Microsoft.Insights/logDefinitions/read",
                "Microsoft.Insights/metricAlerts/*",
                "Microsoft.Insights/metricdefinitions/read",
                "Microsoft.Insights/metrics/read",
                "Microsoft.Insights/scheduledqueryrules/*",
                "Microsoft.Insights/topology/read",
                "Microsoft.Insights/transactions/read",
                "Microsoft.Insights/webtests/*",
                "Microsoft.KeyVault/*",
                "Microsoft.MachineLearningServices/workspaces/*",
                "Microsoft.Network/virtualNetworks/subnets/joinViaServiceEndpoint/action",
                "Microsoft.ResourceHealth/availabilityStatuses/read",
                "Microsoft.Resources/deployments/*",
                "Microsoft.Resources/deployments/operations/read",
                "Microsoft.Resources/subscriptions/operationresults/read",
                "Microsoft.Resources/subscriptions/read",
                "Microsoft.Resources/subscriptions/resourcegroups/deployments/*",
                "Microsoft.Resources/subscriptions/resourceGroups/read",
                "Microsoft.Resources/subscriptions/resourceGroups/write",
                "Microsoft.Storage/storageAccounts/*",
                "Microsoft.Support/*",
                "Microsoft.Search/searchServices/write",
                "Microsoft.Search/searchServices/read",
                "Microsoft.Search/searchServices/delete",
                "Microsoft.Search/searchServices/indexes/*",
                "Microsoft.DataFactory/factories/*"
            ],
            "notActions": [],
            "dataActions": [],
            "notDataActions": []
        }
    ]
}

Convertir une identité managée par le système existante au rôle Administrateur Azure AI

Conseil

Nous vous recommandons de convertir les hubs créés avant le 19/11/2024 pour utiliser le rôle Administrateur d’Azure AI. Le rôle Administrateur Azure AI est plus limité que le rôle Contributeur précédemment utilisé et suit le principal du privilège minimum.

Vous pouvez convertir les hubs créés avant le 19/11/2024 à l’aide de l’une des méthodes suivantes :

  • API REST Azure : Utilisez une requête PATCH adressée à l’API REST Azure pour l’espace de travail. Le corps de la requête doit définir {"properties":{"allowRoleAssignmeentOnRG":true}}. L’exemple suivant montre une requête PATCH à l’aide de curl. Remplacez <your-subscription>, <resource-group-name>, <workspace-name> et <YOUR-ACCESS-TOKEN> par les valeurs de votre scénario. Pour plus d’informations sur l’utilisation des API REST, consultez la Documentation de l’API REST Azure.

    curl -X PATCH https://management.azure.com/subscriptions/<your-subscription>/resourcegroups/<resource-group-name>/providers/Microsoft.MachineLearningServices/workspaces/<workspace-name>?api-version=2024-04-01-preview -H "Authorization:Bearer <YOUR-ACCESS-TOKEN>"
    
  • Azure CLI : Utilisez la commande az ml workspace update avec le paramètre --allow-roleassignment-on-rg true. L’exemple suivant met à jour un espace de travail nommé myworkspace. Cette commande nécessite l’extension CLI Azure Machine Learning version 2.27.0 ou ultérieure.

    az ml workspace update --name myworkspace --allow-roleassignment-on-rg true
    
  • Kit de développement logiciel (SDK) Azure Python : Définissez la propriété allow_roleassignment_on_rg de l’objet Espace de travail sur True, puis effectuez une opération de mise à jour. L’exemple suivant met à jour un espace de travail nommé myworkspace. Cette opération nécessite le Kit de développement logiciel (SDK) Azure Machine Learning version 1.17.0 ou ultérieure.

    ws = ml_client.workspaces.get(name="myworkspace")
    ws.allow_roleassignment_on_rg = True
    ws = ml_client.workspaces.begin_update(workspace=ws).result()
    

Autorisations Azure RBAC du service de dépendances

Le hub a des dépendances sur d’autres services Azure. Le tableau suivant répertorie les autorisations nécessaires pour ces services quand vous créez un hub. La personne qui crée le hub a besoin de ces autorisations. La personne qui crée un projet à partir du hub n’en a pas besoin.

Autorisation Objectif
Microsoft.Storage/storageAccounts/write Créer un compte de stockage avec les paramètres spécifiés, ou mettre à jour les propriétés ou les étiquettes, ou ajouter un domaine personnalisé pour le compte de stockage spécifié.
Microsoft.KeyVault/vaults/write Créer un coffre de clés ou mettre à jour les propriétés d’un coffre de clés existant. Certaines propriétés peuvent nécessiter plus d’autorisations.
Microsoft.CognitiveServices/accounts/write Écrire des comptes d’API.
Microsoft.MachineLearningServices/workspaces/write Créer un espace de travail ou mettre à jour les propriétés d’un espace de travail existant.

Exemple de configuration RBAC d’entreprise

Le tableau suivant est un exemple qui décrit la configuration du contrôle d’accès en fonction du rôle pour votre instance Azure AI Studio pour une entreprise.

Utilisateur Rôle Objectif
Administrateur informatique Propriétaire du hub L’administrateur informatique peut s’assurer que le hub est configuré selon ses normes d’entreprise. Il peut attribuer aux managers le rôle Contributeur sur la ressource pour leur permettre de créer des hubs. Il peut également attribuer aux managers le rôle Développeur Azure AI sur la ressource pour interdire la création d’un hub.
Managers Contributeur ou Développeur Azure AI sur le hub Les managers peuvent gérer le hub, auditer les ressources de calcul, auditer les connexions et créer des connexions partagées.
Responsable d’équipe/Développeur responsable Développeur Azure AI sur le hub Les développeurs principaux peuvent créer des projets pour leur équipe et créer des ressources partagées (telles que le calcul et les connexions) au niveau du hub. Après la création du projet, les propriétaires de projet peuvent inviter d’autres membres.
Membres/développeurs d’équipe Contributeur ou Développeur Azure AI sur le projet Les développeurs peuvent créer et déployer des modèles IA au sein d’un projet et créer des ressources qui permettent le développement, comme les calculs et les connexions.

Accès aux ressources créées en dehors du hub

Lorsque vous créez un hub, les autorisations intégrées de contrôle d’accès en fonction du rôle vous permettent d’accéder à l’utilisation de la ressource. Toutefois, si vous souhaitez utiliser des ressources en dehors de ce qui a été créé en votre nom, vous devez vous assurer que les deux :

  • La ressource que vous essayez d’utiliser dispose d’autorisations configurées pour vous permettre d’y accéder.
  • Votre hub est autorisé à y accéder.

Par exemple, si vous essayez d’utiliser un nouveau stockage d’objets blob, vous devez vous assurer que l’identité managée du hub est ajoutée au rôle Lecteur de stockage Blob pour l’objet blob. Si vous essayez d’utiliser une nouvelle source Recherche Azure AI, vous devrez peut-être ajouter le hub aux attributions de rôles de Recherche Azure AI.

Gérer l’accès avec des rôles

En tant que propriétaire d’un hub, vous pouvez ajouter et supprimer des rôles pour AI Studio. Accédez à la page Accueil dans AI Studio et sélectionnez votre hub. Sélectionnez ensuite Utilisateurs pour ajouter et supprimer des utilisateurs pour le hub. Vous pouvez également gérer les autorisations à partir du portail Azure sous Contrôle d’accès (IAM) ou via Azure CLI. Par exemple, utilisez Azure CLI pour attribuer le rôle Développeur Azure AI à « joe@contoso.com » pour le groupe de ressources « this-rg » avec la commande suivante :

az role assignment create --role "Azure AI Developer" --assignee "joe@contoso.com" --resource-group this-rg 

Créer des rôles personnalisées

Si les rôles intégrés ne suffisent pas, vous pouvez créer des rôles personnalisés. Les rôles personnalisés peuvent disposer d’autorisations en lecture, écriture, suppression et calcul dans AI Studio. Vous pouvez rendre le rôle disponible au niveau d’un projet spécifique, d’un groupe de ressources spécifique ou d’un abonnement spécifique.

Remarque

Vous devez être propriétaire de la ressource à ce niveau pour créer des rôles personnalisés au sein de cette ressource.

L’exemple JSON suivant définit un rôle de développeur AI Studio personnalisé au niveau de l’abonnement :

{
    "properties": {
        "roleName": "AI Studio Developer",
        "description": "Custom role for AI Studio. At subscription level",
        "assignableScopes": [
            "/subscriptions/<your-subscription-id>"
        ],
        "permissions": [
            {
                "actions": [
                    "Microsoft.MachineLearningServices/workspaces/write",
                    "Microsoft.MachineLearningServices/workspaces/endpoints/write",
                    "Microsoft.Storage/storageAccounts/write",
                    "Microsoft.Resources/deployments/validate/action",
                    "Microsoft.KeyVault/vaults/write",
                    "Microsoft.Authorization/roleAssignments/read",
                    "Microsoft.Authorization/roleDefinitions/read",
                    "Microsoft.CognitiveServices/*/read"
                ],
                "notActions": [
                    "Microsoft.MachineLearningServices/workspaces/delete",
                    "Microsoft.MachineLearningServices/workspaces/write",
                    "Microsoft.MachineLearningServices/workspaces/listKeys/action",
                    "Microsoft.MachineLearningServices/workspaces/hubs/write",
                    "Microsoft.MachineLearningServices/workspaces/hubs/delete",
                    "Microsoft.MachineLearningServices/workspaces/featurestores/write",
                    "Microsoft.MachineLearningServices/workspaces/featurestores/delete"
                ],
                "dataActions": [
                    "Microsoft.CognitiveServices/accounts/OpenAI/*/read",
                    "Microsoft.CognitiveServices/accounts/OpenAI/engines/completions/action",
                    "Microsoft.CognitiveServices/accounts/OpenAI/engines/search/action",
                    "Microsoft.CognitiveServices/accounts/OpenAI/engines/generate/action",
                    "Microsoft.CognitiveServices/accounts/OpenAI/deployments/search/action",
                    "Microsoft.CognitiveServices/accounts/OpenAI/deployments/completions/action",
                    "Microsoft.CognitiveServices/accounts/OpenAI/deployments/chat/completions/action",
                    "Microsoft.CognitiveServices/accounts/OpenAI/deployments/extensions/chat/completions/action",
                    "Microsoft.CognitiveServices/accounts/OpenAI/deployments/embeddings/action",
                    "Microsoft.CognitiveServices/accounts/OpenAI/images/generations/action"
                ],
                "notDataActions": []
            }
        ]
    }
}

Pour connaître les étapes de création d’un rôle personnalisé, consultez l’un des articles suivants :

Pour plus d’informations sur la création de rôles personnalisés en général, consultez l’article Rôles personnalisés Azure.

Attribution de rôles dans AI Studio

Vous pouvez ajouter des utilisateurs et attribuer des rôles directement à partir d’Azure AI Studio au niveau du hub ou du projet. Dans le Centre de gestion, sélectionnez Utilisateurs dans la section hub ou projet, puis sélectionnez Nouvel utilisateur pour ajouter un utilisateur.

Remarque

Vous êtes limité à la sélection de rôles intégrés. Si vous devez attribuer des rôles personnalisés, vous devez utiliser le portail Azure, Azure CLI ou Azure PowerShell.

Capture d’écran de la vue d’ensemble du hub Azure AI Studio avec le bouton Nouvel utilisateur mis en évidence.

Vous êtes ensuite invité à entrer les informations relatives à l’utilisateur et à sélectionner un rôle intégré.

Capture d’écran de l’invite d’ajout d’utilisateurs avec le rôle défini sur Développeur Azure AI.

Scénario : utiliser une clé gérée par le client

Lorsque vous configurez un hub pour utiliser une clé gérée par le client (CMK), une instance Key Vault Azure est utilisée pour stocker la clé. L’utilisateur ou le principal de service utilisé pour créer l’espace de travail doit avoir un accès propriétaire ou contributeur au coffre de clés.

Si votre hub AI Studio est configuré avec une identité managée affectée par l’utilisateur(-trice), les rôles suivants doivent être octroyés à l’identité. Ces rôles permettent à l’identité managée de créer les ressources Stockage Azure, Azure Cosmos DB et Recherche Azure utilisées lors de l’utilisation d’une clé gérée par le client :

  • Microsoft.Storage/storageAccounts/write
  • Microsoft.Search/searchServices/write
  • Microsoft.DocumentDB/databaseAccounts/write

Dans le coffre de clés, l’utilisateur ou le principal de service doit avoir l’accès pour créer, obtenir, supprimer et vider la clé via une stratégie d’accès au coffre de clés. Pour plus d'informations, consultez Sécurité Azure Key Vault.

Scénario : connexions à l’aide de l’authentification Microsoft Entra ID

Quand vous créez une connexion qui utilise l’authentification Microsoft Entra ID, vous devez attribuer des rôles à vos développeurs afin qu’ils puissent accéder à la ressource.

Connexion à la ressource Rôle Description
Recherche Azure AI Contributeur Dresser la liste des clés API pour répertorier les index à partir d’Azure AI Studio.
Azure AI Search Contributeur de données d’index de la Recherche Obligatoire pour les scénarios d’indexation
Azure AI services / Azure OpenAI Contributeur OpenAI Cognitive Services Appeler l’API d’ingestion publique à partir d’Azure AI Studio.
Azure AI services / Azure OpenAI Utilisateur Cognitive Services Répertoriez les clés API à partir d’Azure AI Studio.
Azure AI services / Azure OpenAI Contributeur Cognitive Services Autorise les appels au plan de contrôle.
Stockage Blob Azure Contributeur aux données Blob du stockage Requis pour lire et écrire des données dans le stockage d’objets blob.
Azure Data Lake Storage Gen 2 Contributeur aux données Blob du stockage Requis pour lire et écrire des données dans le lac de données.
Microsoft OneLake Contributeur Pour autoriser quelqu’un à accéder à Microsoft OneLake, vous devez lui donner accès à votre espace de travail Microsoft Fabric.

Important

Si vous utilisez Promptflow avec le Stockage Azure (y compris Azure Data Lake Storage Gen 2), vous devez également attribuer le rôle Contributeur privilégié des données du fichier de stockage.

Lors de l’utilisation de connexions authentifiées par Microsoft Entra ID dans le terrain de jeu de la conversation, les services doivent s’autoriser les uns les autres à accéder aux ressources requises. L’administrateur effectuant la configuration doit disposer du rôle Propriétaire sur ces ressources pour ajouter des attributions de rôle. Le tableau suivant liste les attributions de rôle requises pour chaque ressource. La colonne Destinataire fait référence à l’identité managée affectée par le système de la ressource listée. La colonne Ressource fait référence à la ressource à laquelle le destinataire doit accéder. Par exemple, Azure OpenAI a une identité managée affectée par le système qui doit se voir attribuer le rôle Lecteur de données de l’index de recherche pour la ressource Recherche Azure AI.

Rôle Destinataire Ressource Description
Lecteur de données d’index de la Recherche Azure AI services / Azure OpenAI Azure AI Search Le service d’inférence interroge les données de l’index. Utilisé uniquement pour les scénarios d’inférence.
Contributeur de données d’index de la Recherche Azure AI services / Azure OpenAI Azure AI Search Accès en lecture-écriture au contenu dans des index. Importez, actualisez ou interrogez la collection de documents d’un index. Utilisé uniquement pour les scénarios d’ingestion et d’inférence.
Contributeur du service de recherche Azure AI services / Azure OpenAI Azure AI Search Accès en lecture-écriture aux définitions d’objets (index, alias, mappages de synonymes, indexeurs, sources de données et ensembles de compétences). Le service d’inférence interroge le schéma d’index concernant le mappage automatique des champs. Le service d’ingestion de données crée un index, des sources de données, un ensemble de compétences et un indexeur et interroge l’état de l’indexeur.
Contributeur OpenAI Cognitive Services Azure AI Search Azure AI services / Azure OpenAI Compétence personnalisée
Utilisateur OpenAI Cognitive Services Ressource Azure OpenAI pour le modèle de conversation Ressource Azure OpenAI pour le modèle d’incorporation Obligatoire uniquement si vous utilisez deux ressources Azure OpenAI pour communiquer.
Contributeur aux données Blob du stockage Recherche Azure AI Compte Stockage Azure Lit le blob et écrit dans la base de connaissances.
Contributeur aux données Blob du stockage Azure AI services / Azure OpenAI Compte Stockage Azure Lit dans le conteneur d’entrée et écrit les résultats du prétraitement dans le conteneur de sortie.

Remarque

Le rôle Utilisateur OpenAI Cognitive Services n’est requis que si vous utilisez deux ressources Azure OpenAI : une pour votre modèle de conversation et une pour votre modèle d’incorporation. Si cela s’applique, activez les services approuvés ET assurez-vous que Microsoft Entra ID est activé pour la connexion à votre ressource Azure OpenAI de modèle d’incorporation.

Scénario : utiliser une ressource Azure OpenAI existante

Lorsque vous créez une connexion à une ressource Azure OpenAI existante, vous devez également attribuer des rôles à vos utilisateurs afin qu’ils puissent accéder à la ressource. Vous devez attribuer le rôle Utilisateur OpenAI Cognitive Services ou Contributeur OpenAI Cognitive Services en fonction des tâches qu’ils doivent effectuer. Pour obtenir des informations sur ces rôles et les tâches qu’ils permettent, consultes Rôles Azure OpenAI.

Scénario : Utiliser Azure Container Registry

Une instance Azure Container Registry est une dépendance facultative pour un hub Azure AI Studio. Le tableau suivant répertorie la matrice de prise en charge lors de l’authentification d’un hub auprès d’Azure Container Registry, en fonction de la méthode d’authentification et de la Configuration d’accès au réseau public d’Azure Container Registry.

Méthode d'authentification Accès au réseau public
désactivé
Accès au réseau public activé
Azure Container Registry
Utilisateur administrateur
Identité managée affectée par le système de hub AI Studio
Identité managée affectée par l’utilisateur de hub AI Studio
avec le rôle ACRPull attribué à l’identité

Une identité managée affectée par le système est automatiquement affectée aux rôles appropriés lors de la création du hub. Si vous utilisez une identité managée affectée par l’utilisateur, vous devez affecter le rôle ACRPull à l’identité.

Scénario : Utiliser Azure Application Insights pour la journalisation

Azure Application Insights est une dépendance facultative pour un hub Azure AI Studio. Le tableau suivant répertorie les autorisations requises si vous souhaitez utiliser Application Insights lorsque vous créez un hub. La personne qui crée le hub a besoin de ces autorisations. La personne qui crée un projet à partir du hub n’en a pas besoin.

Autorisation Objectif
Microsoft.Insights/Components/Write Écrire dans une configuration de composant Application Insights.
Microsoft.OperationalInsights/workspaces/write Créer un espace de travail ou lier un espace de travail existant en fournissant l’ID client de l’espace de travail existant.

Scénario : Fournisseur d’unités de débit approvisionnées

L’exemple suivant définit un rôle personnalisé qui peut fournir des unités de débit approvisionnées (PTU).

{
    "properties": {
        "roleName": "PTU procurer",
        "description": "Custom role to purchase PTU",
        "assignableScopes": [
            "/subscriptions/<your-subscription-id>"
        ],
        "permissions": [
            {
                "actions": [
                    "Microsoft.CognitiveServices/accounts/commitmentplans/read",
                    "Microsoft.CognitiveServices/accounts/commitmentplans/write",
                    "Microsoft.CognitiveServices/accounts/commitmentplans/delete",
                    "Microsoft.CognitiveServices/locations/commitmentTiers/read",
                    "Microsoft.CognitiveServices/accounts/commitmentplans/read",
                    "Microsoft.CognitiveServices/accounts/commitmentplans/write",
                    "Microsoft.CognitiveServices/accounts/commitmentplans/delete",
                    "Microsoft.Features/features/read",
                    "Microsoft.Features/providers/features/read",
                    "Microsoft.Features/providers/features/register/action",
                    "Microsoft.Insights/logDefinitions/read",
                    "Microsoft.Insights/metricdefinitions/read",
                    "Microsoft.Insights/metrics/read",
                    "Microsoft.ResourceHealth/availabilityStatuses/read",
                    "Microsoft.Resources/deployments/operations/read",
                    "Microsoft.Resources/subscriptions/operationresults/read",
                    "Microsoft.Resources/subscriptions/read",
                    "Microsoft.Resources/subscriptions/resourcegroups/deployments/*",
                    "Microsoft.Resources/subscriptions/resourceGroups/read"
                ],
                "notActions": [],
                "dataActions": [],
                "notDataActions": []
            }
        ]
    }
}

Scénario : API Assistants Azure OpenAI

L’exemple suivant définit un rôle pour un développeur à l’aide d’Assistants Azure OpenAI.

{
    "id": "",
    "properties": {
        "roleName": "Azure OpenAI Assistants API Developer",
        "description": "Custom role to work with Azure OpenAI Assistants API",
        "assignableScopes": [
            "<your-scope>"
        ],
        "permissions": [
            {
                "actions": [
                    "Microsoft.CognitiveServices/*/read",
                    "Microsoft.Authorization/roleAssignments/read",
                    "Microsoft.Authorization/roleDefinitions/read"
                ],
                "notActions": [],
                "dataActions": [
                    "Microsoft.CognitiveServices/accounts/OpenAI/*/read",
                    "Microsoft.CognitiveServices/accounts/OpenAI/engines/completions/action",
                    "Microsoft.CognitiveServices/accounts/OpenAI/engines/search/action",
                    "Microsoft.CognitiveServices/accounts/OpenAI/engines/generate/action",
                    "Microsoft.CognitiveServices/accounts/OpenAI/deployments/search/action",
                    "Microsoft.CognitiveServices/accounts/OpenAI/deployments/completions/action",
                    "Microsoft.CognitiveServices/accounts/OpenAI/deployments/chat/completions/action",
                    "Microsoft.CognitiveServices/accounts/OpenAI/deployments/extensions/chat/completions/action",
                    "Microsoft.CognitiveServices/accounts/OpenAI/deployments/embeddings/action",
                    "Microsoft.CognitiveServices/accounts/OpenAI/images/generations/action",
                    "Microsoft.CognitiveServices/accounts/OpenAI/assistants/write",
                    "Microsoft.CognitiveServices/accounts/OpenAI/assistants/read",
                    "Microsoft.CognitiveServices/accounts/OpenAI/assistants/delete",
                    "Microsoft.CognitiveServices/accounts/OpenAI/assistants/files/write",
                    "Microsoft.CognitiveServices/accounts/OpenAI/assistants/files/read",
                    "Microsoft.CognitiveServices/accounts/OpenAI/assistants/files/delete",
                    "Microsoft.CognitiveServices/accounts/OpenAI/assistants/threads/write",
                    "Microsoft.CognitiveServices/accounts/OpenAI/assistants/threads/read",
                    "Microsoft.CognitiveServices/accounts/OpenAI/assistants/threads/delete",
                    "Microsoft.CognitiveServices/accounts/OpenAI/assistants/threads/messages/write",
                    "Microsoft.CognitiveServices/accounts/OpenAI/assistants/threads/messages/read",
                    "Microsoft.CognitiveServices/accounts/OpenAI/assistants/threads/messages/files/read",
                    "Microsoft.CognitiveServices/accounts/OpenAI/assistants/threads/runs/write",
                    "Microsoft.CognitiveServices/accounts/OpenAI/assistants/threads/runs/read",
                    "Microsoft.CognitiveServices/accounts/OpenAI/assistants/threads/runs/steps/read"
                ],
                "notDataActions": []
            }
        ]
    }
}

Dépannage

Erreur : Le principal n’a pas accès à l’API/opération

Symptômes

Lorsque vous utilisez le terrain de jeu de conversation Azure AI Studio, vous recevez un message d’erreur indiquant « Le principal n’a pas accès à l’API/opération ». L’erreur peut également inclure un « Apim-request-id ».

Cause

L’utilisateur ou le principal de service utilisé pour authentifier les requêtes auprès d’Azure OpenAI ou de Recherche Azure AI n’a pas les autorisations requises pour accéder à la ressource.

Solution

Attribuez les rôles suivants à l’utilisateur ou au principal de service. Le rôle que vous attribuez dépend des services que vous utilisez et du niveau d’accès requis par l’utilisateur ou le principal de service :

Service sollicité Rôle Description
Azure OpenAI Contributeur OpenAI Cognitive Services Appeler l’API d’ingestion publique à partir d’Azure AI Studio.
Azure OpenAI Utilisateur Cognitive Services Répertoriez les clés API à partir d’Azure AI Studio.
Recherche Azure AI Contributeur de données d’index de la Recherche Obligatoire pour les scénarios d’indexation.
Recherche Azure AI Lecteur de données d’index de la Recherche Le service d’inférence interroge les données de l’index. Utilisé uniquement pour les scénarios d’inférence.

Étapes suivantes