Il est courant que plusieurs membres d'une équipe collaborent à 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 principaux.
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.
Vous pouvez contrôler les accès à l'aide de la gestion de l'authentification et des accès (IAM) ou de la console Dialogflow. Dans certains cas, vous devez utiliser la console Google Cloud:
- La console Dialogflow attribue le rôle Administrateur de l'agent (propriétaire de projet IAM) à l'utilisateur qui a créé l'agent. Si vous souhaitez modifier l'administrateur, ajouter plusieurs administrateurs pour un agent ou supprimer des administrateurs, vous devez utiliser la console Google Cloud.
- Si vous avez des intégrations avec d'autres ressources Google Cloud, comme Cloud Functions, et que vous ne voulez pas accorder l'accès complet du projet à une application, vous devez attribuer les rôles de l'API Dialogflow (administrateur, client ou lecteur) dans la console Google Cloud pour IAM.
- Un sous-ensemble de rôles IAM possède les rôles correspondants dans la console Dialogflow. Si vous souhaitez attribuer un rôle qui n'existe pas dans la console Dialogflow, vous devez utiliser la console Google Cloud.
Rôles
Le tableau suivant répertorie les rôles courants associés à Dialogflow. 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.
- Modification autorisée: Permet de créer, supprimer, modifier et lire n'importe quelle ressource.
- Accès à la session : autorisation d'appeler des méthodes pour les 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. Cet accès fournit un sous-ensemble des autorisations d'accès complet et de modification.
- Accès en lecture : autorisation de lire n'importe quelle ressource.
Rôle dans la console Dialogflow | Rôle IAM | Résumé des autorisations | Détail des autorisations |
---|---|---|---|
Admin | Projet > Propriétaire |
Accorde aux propriétaires de projet un accès complet à toutes les ressources Google Cloud et Dialogflow :
|
Consultez la section Définitions des rôles de base IAM. |
Développeur | Projet > Éditeur |
Accorde aux éditeurs de projet un accès en modification à toutes les ressources Google Cloud et Dialogflow :
|
Consultez la section Définitions des rôles de base IAM. |
Reviewer | Projet > Lecteur |
Accorde aux lecteurs de projet ayant besoin d'un accès en lecture à toutes les ressources Google Cloud et Dialogflow :
|
Consultez la section Définitions des rôles de base IAM. |
ND | 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. |
ND | Dialogflow > Administrateur de l'API Dialogflow |
Accorde aux administrateurs de l'API Dialogflow un accès complet aux ressources spécifiques à Dialogflow :
|
Consultez les définitions des rôles IAM Dialogflow. |
ND | Dialogflow > Client de l'API Dialogflow |
Autorisation accordée aux clients de l'API Dialogflow
qui effectuent des appels de détection d'intent à l'aide de l'API:
|
Consultez les définitions des rôles IAM Dialogflow. |
ND | Dialogflow > Éditeur d'agent de la console Dialogflow |
Autorise les éditeurs de la console Dialogflow à modifier les agents existants :
|
Consultez les définitions des rôles IAM Dialogflow. |
ND | Dialogflow > Lecteur de l'API Dialogflow |
Autorise les clients de l'API Dialogflow à effectuer des appels en lecture seule spécifiques à Dialogflow à l'aide de l'API :
|
Consultez les définitions des rôles IAM Dialogflow. |
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 le IAM de 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 membres de compte de service lorsque vous souhaitez utiliser un compte de service pour plusieurs projets et agents. 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 membre, procédez comme suit :
- Cliquez sur le bouton Ajouter situé en haut de la page.
- Saisissez l'adresse e-mail du membre.
- Choisissez un rôle.
- Cliquez sur Enregistrer.
Modifier les autorisations
- Cliquez sur le bouton Modifier correspondant au membre.
- Sélectionnez un autre rôle.
- Cliquez sur Save (Enregistrer).
Supprimer un membre
- Cliquez sur le bouton Supprimer correspondant au membre.
Contrôle des accès à l'aide de la console 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 :
- Accédez à la console Dialogflow ES.
- Sélectionnez votre agent dans la partie supérieure du menu de la barre latérale gauche.
- Cliquez sur le bouton des paramètres à côté du nom de l'agent.
- Cliquez sur l'onglet Share (Partager). Si vous ne disposez pas du rôle Administrateur de l'agent, l'onglet Partager n'est pas visible.
Ajouter un utilisateur
- Saisissez l'adresse e-mail de l'utilisateur sous Invite New People (Inviter de nouvelles personnes).
- Choisissez un rôle.
- Cliquez sur Add (Ajouter).
- Cliquez sur Enregistrer.
Modifier les autorisations
- Recherchez l'utilisateur concerné dans la liste.
- Sélectionnez un autre rôle.
- Cliquez sur Enregistrer.
Supprimer un utilisateur
Recherchez l'utilisateur concerné dans la liste.
Cliquez sur le bouton Supprimer
correspondant à l'utilisateur.Cliquez sur Enregistrer.
Comptes de service créés automatiquement
Lorsque vous créez et utilisez votre agent, Dialogflow crée automatiquement des agents de service.
Pour afficher les rôles attribués à ces agents de service, activez l'option Inclure les attributions de rôles fournies par Google sur la page IAM.
Vous ne devez pas supprimer, modifier ni télécharger de clés pour ces agents de service, Vous ne devez pas non plus utiliser ces agents de service pour effectuer des appels d'API directs. Ils ne sont utilisés que par le service Dialogflow pour se connecter à divers services Google Cloud utilisés par votre agent. Vous devrez peut-être vous adresser à ces agents de service par e-mail lorsque la configuration de certaines fonctionnalités de Dialogflow.
Le tableau suivant décrit certains de ces agents de service :
Formulaire par e-mail IAM | Objectif |
---|---|
service-project-number @gcp-sa-dialogflow.iam.gserviceaccount.com |
Utilisé pour connecter votre agent aux services qui gèrent le trafic d'intégration. |
firebase-adminsdk-alphanum @project-id.iam.gserviceaccount.com |
Utilisé pour connecter votre agent aux services qui gèrent le trafic d'intégration de l'Assistant Google. |
project-id @appspot.gserviceaccount.com |
Utilisé pour connecter votre agent aux services qui gèrent le trafic d'intégration de l'Assistant Google. |
Transférer le rôle d'administrateur
Pour transférer le rôle d'administrateur d'un agent, l'administrateur existant doit suivre les étapes ci-dessus pour ajouter un administrateur. Une fois que le nouvel administrateur a accepté le rôle attribué, vous pouvez supprimer l'ancien administrateur en toute sécurité.
Si l'administrateur existant ne travaille plus dans votre organisation, et que vous avez besoin que le rôle d’administrateur soit transféré à un autre employé, vous avez deux possibilités:
- Un administrateur du organisation associé au projet de l'agent est autorisé à modifier l'administrateur de l'agent.
- Si vous avez des autorisations de lecture pour l'agent, vous pouvez exporter l'agent et l'importer dans un agent dont l'employé souhaité est administrateur. Pour un agent actif en production, cela peut entraîner un temps d'arrêt pendant la migration de l'agent et la mise à jour des intégrations.
OAuth
Si vous utilisez des bibliothèques clientes Google pour accéder à Dialogflow, 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 Dialogflow 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 Dialogflow)
Requêtes impliquant un accès à Cloud Storage
Certaines requêtes Dialogflow accèdent à des objets dans Cloud Storage pour lire ou écrire des données. Lorsque vous appelez l'une de ces requêtes, Dialogflow accède aux données Cloud Storage au nom de l'appelant. Cela signifie que votre requête d'authentification doit disposer d'autorisations pour accéder à Dialogflow et aux objets Cloud Storage.
Lorsque vous utilisez une bibliothèque cliente Google et des rôles IAM, consultez les 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)