Es habitual que varios miembros de un equipo colaboren en la creación de un agente y que los servicios accedan al agente. Con los roles, puedes controlar el acceso y los permisos concedidos a los principales.
Si usas la API, también puedes tener una o varias aplicaciones que envíen solicitudes a un agente. En este caso, puedes controlar el acceso con cuentas de servicio.
Puedes controlar el acceso mediante Gestión de Identidades y Accesos (IAM) o la consola de Dialogflow.
La consola de Dialogflow asigna el rol de administrador del agente al usuario que lo ha creado. Este usuario recibe automáticamente el rol de propietario del proyecto de gestión de identidades y accesos en el proyecto asociado al agente.
Los administradores de agentes pueden añadir desarrolladores y revisores al agente en la consola de Dialogflow. Cuando se concede el rol de desarrollador o revisor en la consola de Dialogflow, el usuario obtiene el rol de editor de proyectos de gestión de identidades y accesos o el de lector de proyectos de gestión de identidades y accesos, respectivamente. Otra forma de añadir desarrolladores y revisores al agente es conceder a los usuarios los roles de editor o lector de proyectos de gestión de identidades y accesos correspondientes en la consola Google Cloud .
Hay algunas situaciones en las que debes usar la Google Cloud consola:
- Si quieres cambiar el administrador, añadir varios administradores a un agente o quitar administradores de un agente, debes usar la Google Cloud consola.
- Si tienes integraciones con otros recursos de Google Cloud , como Cloud Functions, y no quieres conceder acceso completo al proyecto a una aplicación, debes asignar los roles de la API Dialogflow (Administrador, Cliente o Lector) en la consola de Google Cloud para la gestión de identidades y accesos.
- Un subconjunto de roles de gestión de identidades y accesos tienen roles correspondientes en la consola de Dialogflow. Si quieres asignar un rol que no existe en la consola de Dialogflow, debes usar la Google Cloud consola.
Roles
En la siguiente tabla se indican los roles habituales relevantes para Dialogflow, la correlación entre los roles de la consola de Dialogflow y los roles de gestión de identidades y accesos, así como los detalles sobre los permisos.
En los resúmenes de permisos de la tabla se usan los siguientes términos:
- Acceso completo: permiso para modificar el acceso, crear, eliminar, editar y leer cualquier recurso.
- Acceso de edición: permiso para crear, eliminar, editar y leer cualquier recurso.
- Acceso a la sesión: permiso para llamar a métodos de recursos solo de tiempo de ejecución durante una conversación, como detectar intenciones, actualizar el contexto, actualizar entidades de la sesión o interacciones de la conversación de Agent Assist. Este acceso proporciona un subconjunto de permisos que se encuentran en el acceso completo y de edición.
- Acceso de lectura: permiso para leer cualquier recurso.
Rol de la consola de Dialogflow | Rol de gestión de identidades y accesos | Resumen de permisos | Detalles del permiso |
---|---|---|---|
Administrador | Proyecto > Propietario |
Concede acceso a los propietarios de proyectos
que necesiten acceso completo a todos los recursos de Google Cloud y Dialogflow:
|
Consulta las definiciones de los roles básicos de gestión de identidades y accesos. |
Desarrollador | Proyecto > Editor |
Concede a los editores del proyecto
que necesiten acceso de edición a todos los recursos de Google Cloud y Dialogflow:
|
Consulta las definiciones de los roles básicos de gestión de identidades y accesos. |
Revisor | Proyecto > lector |
Concede a los lectores del proyecto
que necesiten acceso de lectura a todos los recursos de Google Cloud y Dialogflow:
|
Consulta las definiciones de los roles básicos de gestión de identidades y accesos. |
N/A | Proyecto > Navegador |
Concede a los navegadores de proyectos
que necesiten acceso de lectura para examinar la jerarquía de un proyecto,
incluidas la carpeta, la organización y la política de gestión de identidades y accesos:
|
Consulta las definiciones de roles de proyecto de gestión de identidades y accesos. |
N/A | Dialogflow > Administrador de la API de Dialogflow |
Concede a los administradores de la API de Dialogflow
que necesiten acceso completo a recursos específicos de Dialogflow:
|
Consulta las definiciones de roles de gestión de identidades y accesos de Dialogflow. |
N/A | Dialogflow > Cliente de la API de Dialogflow |
Concede a los clientes de la API de Dialogflow
que realicen llamadas a la detección de intenciones mediante la API:
|
Consulta las definiciones de roles de gestión de identidades y accesos de Dialogflow. |
N/A | Dialogflow > Editor de agentes de la consola de Dialogflow |
Concede a los editores de la consola de Dialogflow
que editen agentes:
|
Consulta las definiciones de roles de gestión de identidades y accesos de Dialogflow. |
N/A | Dialogflow > Lector de la API de Dialogflow |
Concede a los clientes de la API de Dialogflow
que realizan llamadas de solo lectura específicas de Dialogflow
mediante la API:
|
Consulta las definiciones de roles de gestión de identidades y accesos de Dialogflow. |
Controlar el acceso con la consola de Google Cloud
Puedes controlar el acceso con los ajustes de gestión de identidades y accesos. Consulta la guía de inicio rápido de gestión de identidades y accesos para obtener instrucciones detalladas sobre cómo añadir, editar y quitar permisos.
Para acceder a los ajustes que se indican a continuación, abre la página IAM en la Google Cloud consola.
Añadir un usuario o una cuenta de servicio al proyecto
Puedes proporcionar permisos a usuarios o cuentas de servicio Google Cloud asignándoles roles en tu proyecto. Los usuarios se añaden proporcionando su dirección de correo. Las cuentas de servicio también se añaden proporcionando la dirección de correo asociada. Debes añadir miembros a la cuenta de servicio cuando quieras usar una cuenta de servicio para varios proyectos y agentes. Para encontrar la dirección de correo asociada a tu cuenta de servicio, consulta la página Cuentas de servicio de IAM en la Google Cloud consola.
Para añadir un miembro, sigue estos pasos:
- En la parte superior de la página, haz clic en el botón de añadir .
- Introduce la dirección de correo del miembro.
- Selecciona un rol.
- Haz clic en Guardar.
Cambiar permisos
- Haz clic en el botón de edición del miembro.
- Selecciona otro rol.
- Haz clic en Guardar.
Quitar un miembro
- Haz clic en el botón de eliminar junto al miembro.
Controlar el acceso con la consola de Dialogflow
Las opciones para compartir se encuentran en los ajustes del agente. Para abrir la configuración para compartir agentes, sigue estos pasos:
- Ve a la consola de Dialogflow ES.
- Selecciona tu agente cerca de la parte superior del menú de la barra lateral izquierda.
- Haz clic en el botón de configuración situado junto al nombre del agente.
- Haz clic en la pestaña Compartir. Si no ves la pestaña Compartir, es porque no tienes el rol de administrador de agentes necesario.
Añadir un usuario
- Introduce la dirección de correo del usuario en Invitar a personas nuevas.
- Selecciona un rol.
- Haz clic en Añadir.
- Haz clic en Guardar.
Cambiar permisos
- Localiza al usuario en la lista.
- Selecciona otro rol.
- Haz clic en Guardar.
Quitar un usuario
Localiza al usuario en la lista.
Haz clic en el botón de eliminar
del usuario.Haz clic en Guardar.
Cuentas de servicio creadas automáticamente
Cuando creas un agente y trabajas con él, Dialogflow crea automáticamente algunos agentes de servicio.
Para ver los roles concedidos a estos agentes de servicio, habilita la opción Incluir asignaciones de roles proporcionadas por Google en la página Gestión de identidades y accesos.
No debes eliminar, editar ni descargar claves de ninguno de estos agentes de servicio, ni tampoco debes usarlos para hacer llamadas directas a la API. El servicio Dialogflow solo las usa para conectarse a varios servicios que utiliza tu agente. Google Cloud Es posible que tengas que hacer referencia a estos agentes de servicio por correo electrónico al configurar determinadas funciones de Dialogflow.
En la siguiente tabla se describen algunos de estos agentes de servicio:
Formulario de correo de gestión de identidades y accesos | Finalidad |
---|---|
service-project-number @gcp-sa-dialogflow.iam.gserviceaccount.com |
Se usa para conectar tu agente a los servicios que gestionan el tráfico de integración. |
firebase-adminsdk-alphanum @project-id.iam.gserviceaccount.com |
Se usa para conectar tu agente a los servicios que gestionan el tráfico de la integración del Asistente de Google. |
project-id @appspot.gserviceaccount.com |
Se usa para conectar tu agente a los servicios que gestionan el tráfico de la integración del Asistente de Google. |
Transferir el rol de administrador
Para transferir el rol de administrador de un agente, el administrador actual debe seguir los pasos que se indican más arriba para añadir un nuevo administrador. Cuando el nuevo administrador acepte el rol concedido, podrás quitar al antiguo administrador.
Si el administrador actual ya no trabaja en tu organización y necesitas transferir el rol de administrador a otro empleado, tienes dos opciones:
- Un administrador de la organización asociada al proyecto del agente tiene permisos para modificar el administrador del agente.
- Si tienes permisos de lectura para el agente, puedes exportarlo e importarlo a un agente en el que el empleado que quieras sea administrador. Esto puede provocar un tiempo de inactividad para un agente de producción activo mientras se migra al agente y se actualizan las integraciones.
OAuth
Si usas bibliotecas de cliente de Google para acceder a Dialogflow, no tienes que usar OAuth directamente, ya que estas bibliotecas se encargan de la implementación. Sin embargo, si implementas tu propio cliente, es posible que tengas que implementar tu propio flujo de OAuth. Para acceder a la API de Dialogflow, se necesita uno de los siguientes permisos de OAuth:
https://www.googleapis.com/auth/cloud-platform
(acceso a todos los recursos del proyecto)https://www.googleapis.com/auth/dialogflow
(acceso a recursos de Dialogflow)
Solicitudes que implican acceso a Cloud Storage
Algunas solicitudes de Dialogflow acceden a objetos de Cloud Storage para leer o escribir datos. Cuando llamas a una de estas solicitudes, Dialogflow accede a los datos de Cloud Storage en nombre de la persona que llama. Esto significa que la autenticación de tu solicitud debe tener permisos para acceder a Dialogflow y a los objetos de Cloud Storage.
Cuando se usan una biblioteca de cliente de Google y roles de gestión de identidades y accesos, consulta la guía de control de acceso de Cloud Storage para obtener información sobre los roles de Cloud Storage.
Cuando implementes tu propio cliente y utilices OAuth, debes usar el siguiente permiso de OAuth:
https://www.googleapis.com/auth/cloud-platform
(acceso a todos los recursos del proyecto)