Il est courant que plusieurs membres d'une équipe collaborassent à la création d'un agent et que des services y aient accès. L'utilisation de rôles vous permet de contrôler les accès et les autorisations accordées aux principals.
Vous pouvez configurer l'accès à l'aide de la console Dialogflow CX (consulter la documentation, ouvrir la console) ou de Google Cloud Console (consulter la documentation, ouvrir la console) avec Identity and Access Management (IAM). La console Google Cloud permet d'attribuer des rôles IAM aux comptes principaux, tandis que la console Dialogflow CX permet d'attribuer des rôles d'agent Conversational Agent (Dialogflow CX) aux comptes principaux. Les rôles d'agent Conversational Agents (Dialogflow CX) sont des rôles prédéfinis pratiques définis par Conversational Agents (Dialogflow CX) qui limitent l'accès à un agent ou aux ressources enfants d'un agent spécifique.
Dans certaines situations, vous devez utiliser la console Google Cloud:
- Le rôle de propriétaire de projet IAM est attribué par défaut à l'utilisateur qui a créé le projet et qui est propriétaire de l'agent. Ce propriétaire a un accès complet à tous les agents du projet. Si vous souhaitez modifier le propriétaire du projet, vous devez utiliser la console Google Cloud.
- Seul l'accès au niveau de l'agent peut être configuré via la console Dialogflow CX. Si vous souhaitez configurer l'accès au niveau du projet, vous devez utiliser la console Google Cloud.
- Un sous-ensemble de rôles IAM possède les rôles d'agent Conversational Agents (Dialogflow CX) correspondants. Si vous souhaitez attribuer un rôle au niveau du projet ou de l'agent qui n'existe pas dans la console Dialogflow CX, vous devez utiliser la console Google Cloud.
- Si vous créez un agent de data store avec l'interface utilisateur de Vertex AI Conversation, vous devez utiliser la console Google Cloud.
Si vous utilisez l'API, une ou plusieurs applications peuvent envoyer des requêtes à un agent. Dans ce cas, vous pouvez contrôler les accès à l'aide des comptes de service.
Contrôler les accès à l'aide de la console Dialogflow CX
La console Dialogflow CX vous permet d'appliquer des rôles pratiques d'agent configurés pour le partage au niveau de l'agent. Ces rôles sont associés aux rôles IAM dotés de conditions IAM qui limitent l'accès à un agent spécifique ou à un sous-ensemble de ressources enfants de celui-ci.
Pour accéder à la configuration des rôles d'agent à partir de la console Dialogflow CX, vous devez disposer du rôle Administrateur de projet IAM pour le projet associé. Ce rôle est attribué à partir de la console Google Cloud.
Rôle d'agent des agents de conversation (Dialogflow CX) | Résumé | Rôle IAM |
---|---|---|
Admin | Fournit un accès complet permettant de créer, mettre à jour, interroger et détecter l'intent, et supprimer l'agent de la console ou de l'API. | Dialogflow > Administrateur de l'API Dialogflow |
Reader | Fournit un accès en lecture pour interroger l'agent (et non détecter l'intent) à partir de la console ou de l'API. | Dialogflow > Lecteur de l'API Dialogflow |
Client | Permet de détecter un intent à partir de la console ou de l'API. | Dialogflow > Client de l'API Dialogflow |
Administrateur d'intents | Fournit un accès permettant de créer, mettre à jour, supprimer ou interroger les intents d'un agent à partir de la console ou de l'API. | Dialogflow > Administrateur d'intents Dialogflow |
Administrateur de type d'entité | Permet de créer, de mettre à jour, de supprimer ou d'interroger les types d'entités d'un agent à partir de la console ou de l'API. | Dialogflow > Administrateur de type d'entité Dialogflow |
Administrateur de webhook | Fournit un accès permettant de créer, mettre à jour, supprimer ou interroger les webhooks d'un agent à partir de la console ou de l'API. | Dialogflow > Administrateur de webhooks Dialogflow |
Administrateur de scénario de test | Permet de créer, de mettre à jour, de supprimer ou d'interroger les scénarios de test d'un agent à partir de la console ou de l'API. | Dialogflow > Administrateur du scénario de test Dialogflow |
Éditeur de flux | Fournit un accès permettant de mettre à jour, d'interroger un flux spécifique et de créer, mettre à jour, supprimer ou interroger les ressources de flux (pages, groupes de routes et versions) à partir de la console ou de l'API. | Dialogflow > Éditeur de flux Dialogflow |
Éditeur d'environnements | Fournit un accès permettant de mettre à jour, d'interroger un environnement spécifique et de créer, mettre à jour, supprimer ou interroger les ressources d'environnement (tests) à partir de la console ou de l'API. | Dialogflow > Éditeur d'environnement Dialogflow |
Les options de partage se trouvent dans les paramètres de l'agent. Pour ouvrir les paramètres de partage de l'agent, procédez comme suit :
- Ouvrez la console Dialogflow CX.
- Choisissez votre projet Google Cloud.
- Sélectionnez votre agent.
- Cliquez sur Agent Settings (Paramètres de l'agent).
- Cliquez sur l'onglet Partager.
Ajouter un compte principal
- Cliquez sur Ajouter.
- Saisissez l'adresse e-mail de l'utilisateur, du groupe ou du compte de service.
- Sélectionnez User (Utilisateur), Group (Groupe) ou Service Account (Compte de service) pour le type d'adresse e-mail.
- Le rôle Lecteur Dialogflow est ajouté par défaut, ce qui est nécessaire pour que les utilisateurs puissent accéder à la console Dialogflow CX.
- Cliquez sur Ajouter un rôle sous Attribuer des rôles.
- Sélectionnez un type de rôle sous Type.
- Pour les rôles Éditeur de flux et Éditeur d'environnement, sélectionnez des flux ou des environnements spécifiques, ou conservez l'option Tous par défaut.
- Vous pouvez également définir la date d'expiration du rôle.
- Cliquez sur Enregistrer.
Modifier les rôles de compte principal
- Cliquez sur le compte principal dans la liste.
- Mettez à jour les rôles pour ce compte principal dans la fenêtre pop-up.
- Cliquez sur Enregistrer.
Supprimer un compte principal
- Recherchez le compte principal dans la liste.
- Cliquez sur le bouton Supprimer delete correspondant au compte principal.
- Cliquez sur OK.
Contrôler les accès à l'aide de la console Google Cloud
Vous pouvez contrôler les accès à l'aide des paramètres IAM. Consultez le guide de démarrage rapide IAM pour obtenir des instructions détaillées sur l'ajout, la modification et la suppression des autorisations.
Pour accéder aux paramètres ci-dessous, ouvrez la page IAM dans la console Google Cloud.
Ajouter un utilisateur ou un compte de service au projet
Vous pouvez accorder des autorisations à des utilisateurs ou à des comptes de service en leur attribuant des rôles sur votre projet Google Cloud. Vous pouvez ajouter des utilisateurs en fournissant leur adresse e-mail. Vous pouvez également ajouter des comptes de service en fournissant leur adresse e-mail associée. Vous devez ajouter des comptes de service lorsque vous souhaitez utiliser un compte de service pour plusieurs projets. Pour trouver l'adresse e-mail associée à votre compte de service, consultez la page Comptes de service d'IAM dans la console Google Cloud.
Pour ajouter un compte principal, procédez comme suit :
- Cliquez sur le bouton Ajouter situé en haut de la page.
- Saisissez l'adresse e-mail du compte principal.
- Choisissez un rôle.
- Cliquez sur Enregistrer.
Modifier les autorisations
- Cliquez sur le bouton Modifier correspondant au compte principal.
- Sélectionnez un autre rôle.
- Cliquez sur Enregistrer.
Supprimer un compte principal
- Cliquez sur le bouton Supprimer correspondant au compte principal.
Ajouter une condition pour limiter l'accès à un agent
Lorsque vous ajoutez ou modifiez un compte principal, vous pouvez créer une condition IAM qui limite l'accès à un agent.
Exemple :
{
"expression": "resource.name.startsWith(\"projects/PROJECT_ID/locations/REGION_ID/agents/AGENT_ID\")",
"title": "For Conversational Agents (Dialogflow CX) Agent AGENT_ID"
}
Cette condition vous donne un accès de base à un agent spécifique. Par exemple, un compte de service avec cette condition ne peut appeler l'API Agents conversationnels (Dialogflow CX) que pour accéder à l'agent spécifié dans la condition du projet, mais pas aux autres agents du projet.
Pour ajouter cette condition à un rôle accordé à un compte principal, procédez comme suit :
- Sélectionnez un compte principal.
- Cliquez sur le bouton Modifier correspondant au compte principal.
- Cliquez sur Ajouter une condition :
- Dans le champ Title (Titre), saisissez
For Conversational Agents (Dialogflow CX) Agent AGENT_ID
et remplacez AGENT_ID par votre ID d'agent. - Vous pouvez ajouter une description.
- Sélectionnez l'Éditeur de conditions pour créer votre condition.
- Ajoutez l'expression
resource.name.startsWith("projects/PROJECT_ID/locations/REGION_ID/agents/AGENT_ID")
en remplaçant AGENT_ID par votre ID d'agent et PROJECT_ID par votre ID de projet. - Cliquez sur Enregistrer.
Rôles IAM
Le tableau suivant répertorie les rôles IAM courants applicables aux agents conversationnels (Dialogflow CX). Les résumés des autorisations du tableau utilisent les termes suivants :
- Accès complet : autorisation de modifier les accès, de créer, de supprimer, de modifier et de lire n'importe quelle ressource.
- Accès en modification : autorisation de créer, supprimer, modifier et lire n'importe quelle ressource.
- Accès à la session : autorisation d'appeler des méthodes pour des ressources d'exécution uniquement lors d'une conversation, comme la détection d'intent, la mise à jour du contexte, la mise à jour des entités de session ou les interactions de conversation Agent Assist.
- Accès en lecture : autorisation de lire n'importe quelle ressource.
Rôle IAM | Résumé des autorisations | Détail des autorisations |
---|---|---|
Projet > Propriétaire |
Accordez aux propriétaires de projet un accès complet à toutes les ressources Google Cloud et aux agents de conversation (Dialogflow CX) :
|
Consultez la section Définitions des rôles de base IAM. |
Projet > Éditeur |
Accorde aux éditeurs de projet un accès en modification à toutes les ressources Google Cloud et des agents conversationnels (Dialogflow CX) :
|
Consultez la section Définitions des rôles de base IAM. |
Projet > Lecteur |
Accorde aux lecteurs de projet ayant besoin d'un accès en lecture à toutes les ressources Google Cloud et des agents conversationnels (Dialogflow CX) :
|
Consultez la section Définitions des rôles de base IAM. |
Projet > Administrateur IAM |
Accorde aux administrateurs IAM de projet qui ont besoin d'un accès en modification à la configuration des rôles d'agent des agents conversationnels (Dialogflow CX). | Consultez la section Définitions des rôles de gestionnaire de ressources IAM. |
Projet > Navigateur |
Accorde aux navigateurs de projet un accès en lecture pour parcourir la hiérarchie d'un projet, y compris le dossier, l'organisation et la stratégie IAM :
|
Consultez la section Définitions des rôles de projet IAM. |
Dialogflow > Administrateur de l'API Dialogflow |
Accorde aux administrateurs de l'API Conversational Agents (Dialogflow CX) qui ont besoin d'un accès complet aux ressources spécifiques à Conversational Agents (Dialogflow CX) :
|
Consultez les définitions des rôles IAM Dialogflow. |
Dialogflow > Client de l'API Dialogflow |
Autorise les clients de l'API Conversational Agents (Dialogflow CX) à effectuer des appels de détection d'intent à l'aide de l'API :
|
Consultez les définitions des rôles IAM Dialogflow. |
Dialogflow > Éditeur d'agent de la console Dialogflow CX |
Autorise les éditeurs de la console Dialogflow CX à modifier les agents existants :
|
Consultez les définitions des rôles IAM Dialogflow. |
Dialogflow > Lecteur de l'API Dialogflow |
Autorise les clients de l'API Dialogflow à effectuer des appels en lecture seule spécifiques aux agents conversationnels (Dialogflow CX) à l'aide de l'API :
|
Consultez les définitions des rôles IAM Dialogflow. |
Administrateur Discovery Engine | Accordez-la aux utilisateurs qui créent des agents de data store avec l'interface utilisateur de Vertex AI Agents. | Consultez la section Autres définitions de rôles. |
OAuth
Si vous utilisez des bibliothèques clientes Google pour accéder aux agents conversationnels (Dialogflow CX), vous n'avez pas besoin d'utiliser directement OAuth, car ces bibliothèques gèrent l'implémentation pour vous. Toutefois, si vous implémentez votre propre client, vous devrez peut-être implémenter votre propre flux OAuth. L'accès à l'API Conversational Agents (Dialogflow CX) nécessite l'un des champs d'application OAuth suivants:
https://www.googleapis.com/auth/cloud-platform
(accès à toutes les ressources du projet)https://www.googleapis.com/auth/dialogflow
(accès aux ressources des agents de conversation (Dialogflow CX))
Requêtes impliquant l'accès à Cloud Storage
Certains agents conversationnels (Dialogflow CX) demandent l'accès à des objets dans Cloud Storage pour lire ou écrire des données. Lorsque vous appelez l'une de ces requêtes, les agents conversationnels (Dialogflow CX) accèdent aux données Cloud Storage au nom de l'appelant. Cela signifie que l'authentification de votre requête doit disposer d'autorisations pour accéder aux agents conversationnels (Dialogflow CX) ainsi qu'aux objets Cloud Storage.
Lorsque vous utilisez une bibliothèque cliente Google et des rôles IAM, consultez le guide du contrôle des accès Cloud Storage pour en savoir plus sur les rôles Cloud Storage.
Lorsque vous implémentez votre propre client et que vous utilisez OAuth, vous devez utiliser le champ d'application OAuth suivant:
https://www.googleapis.com/auth/cloud-platform
(accès à toutes les ressources du projet)
Contrôle des accès à la console de l'Agent Builder
Consultez le guide de contrôle des accès pour Vertex AI Agent Builder et Discovery Engine.
Rôles personnalisés pour l'accès à l'outil de playbook
Vous pouvez contrôler précisément l'accès aux outils de playbook à l'aide d'autorisations et de rôles personnalisés.
Pour lister les autorisations disponibles, accédez à l'outil de recherche d'autorisations et recherchez dialogflow.tools
.
Vous pouvez utiliser ces autorisations pour créer des rôles personnalisés.