Control de acceso con la IAM

Es común que varios miembros del equipo colaboren en la compilación de un agente y que los servicios accedan al agente. Mediante el uso de roles, puedes controlar el acceso y los permisos otorgados a los principales.

Puedes configurar el acceso con la Google Cloud consola mediante Identity and Access Management (IAM). La Google Cloud consola se usa para otorgar roles de IAM a las principales. Consulta la guía de inicio rápido de IAM para obtener instrucciones detalladas sobre cómo agregar, editar y quitar permisos.

Para acceder a la configuración, abre la página IAM en la Google Cloud consola.

Agrega un usuario o miembro de cuenta de servicio al proyecto

Para otorgar permisos a usuarios o cuentas de servicio otórgales roles en tu Google Cloud proyecto. Los usuarios se agregan mediante el ingreso de la dirección de correo electrónico. Las cuentas de servicio también se agregan mediante el ingreso de la dirección de correo electrónico asociada. Debes agregar cuentas de servicio cuando quieras usar una cuenta de servicio para varios proyectos. Para encontrar la dirección de correo electrónico asociada con tu cuenta de servicio, consulta la página Cuentas de servicio de IAM en la Google Cloud consola.

Agrega un principal

Para agregar un principal, haz lo siguiente:

  1. Haz clic en en la parte superior de la página.
  2. Ingresa la dirección de correo electrónico del principal.
  3. Selecciona una función.
  4. Haz clic en Guardar.

Cambiar permisos

Para cambiar los permisos, haz lo siguiente:

  1. Haz clic en para el principal.
  2. Selecciona una función diferente.
  3. Haz clic en Guardar.

Quita un principal

Para quitar un principal, haz clic en para el principal.

Funciones de IAM

Los siguientes roles están disponibles para acceder a CX Agent Studio.

Administrador de Gemini Enterprise para la experiencia del cliente (ces.googleapis.com/admin)

Proporciona acceso completo a los recursos.

Roles básicos:

  • ces.googleapis.com/viewer
  • ces.googleapis.com/client
  • contactcenterinsights.googleapis.com/admin

Permisos adicionales:

  • ces.googleapis.com/operations.delete
  • ces.googleapis.com/operations.cancel
  • ces.googleapis.com/apps.create
  • ces.googleapis.com/apps.update
  • ces.googleapis.com/apps.delete
  • ces.googleapis.com/apps.import
  • ces.googleapis.com/apps.export
  • ces.googleapis.com/apps.runEvaluation
  • ces.googleapis.com/agents.create
  • ces.googleapis.com/agents.update
  • ces.googleapis.com/agents.updateCallbacks
  • ces.googleapis.com/agents.updateInstructions
  • ces.googleapis.com/agents.updateTools
  • ces.googleapis.com/agents.updateGeneral
  • ces.googleapis.com/agents.delete
  • ces.googleapis.com/examples.create
  • ces.googleapis.com/examples.update
  • ces.googleapis.com/examples.delete
  • ces.googleapis.com/tools.create
  • ces.googleapis.com/tools.update
  • ces.googleapis.com/tools.delete
  • ces.googleapis.com/guardrails.create
  • ces.googleapis.com/guardrails.update
  • ces.googleapis.com/guardrails.delete
  • ces.googleapis.com/toolsets.create
  • ces.googleapis.com/toolsets.update
  • ces.googleapis.com/toolsets.delete
  • ces.googleapis.com/deployments.create
  • ces.googleapis.com/deployments.update
  • ces.googleapis.com/deployments.delete
  • ces.googleapis.com/conversations.delete
  • ces.googleapis.com/evaluations.create
  • ces.googleapis.com/evaluations.update
  • ces.googleapis.com/evaluations.delete
  • ces.googleapis.com/evaluationResults.delete
  • ces.googleapis.com/evaluationDatasets.create
  • ces.googleapis.com/evaluationDatasets.update
  • ces.googleapis.com/evaluationDatasets.delete
  • ces.googleapis.com/evaluationRuns.delete
  • ces.googleapis.com/scheduledEvaluationRuns.create
  • ces.googleapis.com/scheduledEvaluationRuns.update
  • ces.googleapis.com/scheduledEvaluationRuns.delete
  • ces.googleapis.com/appVersions.create
  • ces.googleapis.com/appVersions.delete
  • ces.googleapis.com/appVersions.restore
  • ces.googleapis.com/omnichannels.create
  • ces.googleapis.com/omnichannels.update
  • ces.googleapis.com/omnichannels.delete
  • ces.googleapis.com/apps.createTagBinding
  • ces.googleapis.com/apps.deleteTagBinding
  • ces.googleapis.com/apps.listTagBindings
  • ces.googleapis.com/apps.listEffectiveTags
  • ces.googleapis.com/assistantSessions.create
  • ces.googleapis.com/routes.create
  • ces.googleapis.com/routes.update
  • ces.googleapis.com/routes.delete
  • ces.googleapis.com/endpointConfigs.create
  • ces.googleapis.com/endpointConfigs.update
  • ces.googleapis.com/endpointConfigs.delete
  • ces.googleapis.com/sipDomains.create
  • ces.googleapis.com/sipDomains.update
  • ces.googleapis.com/sipDomains.delete
  • ces.googleapis.com/securitySettings.update

Visualizador de Gemini Enterprise para la experiencia del cliente (ces.googleapis.com/viewer)

Proporciona acceso de solo lectura a los recursos.

Roles básicos:

  • contactcenterinsights.googleapis.com/viewer

Permisos adicionales:

  • cloudresourcemanager.googleapis.com/projects.get
  • cloudresourcemanager.googleapis.com/projects.list
  • ces.googleapis.com/operations.list
  • ces.googleapis.com/operations.get
  • ces.googleapis.com/locations.list
  • ces.googleapis.com/locations.get
  • ces.googleapis.com/apps.list
  • ces.googleapis.com/apps.get
  • ces.googleapis.com/agents.list
  • ces.googleapis.com/agents.get
  • ces.googleapis.com/examples.list
  • ces.googleapis.com/examples.get
  • ces.googleapis.com/tools.list
  • ces.googleapis.com/tools.get
  • ces.googleapis.com/guardrails.list
  • ces.googleapis.com/guardrails.get
  • ces.googleapis.com/toolsets.list
  • ces.googleapis.com/toolsets.get
  • ces.googleapis.com/deployments.list
  • ces.googleapis.com/deployments.get
  • ces.googleapis.com/conversations.list
  • ces.googleapis.com/conversations.get
  • ces.googleapis.com/appVersions.list
  • ces.googleapis.com/appVersions.get
  • ces.googleapis.com/evaluations.list
  • ces.googleapis.com/evaluations.get
  • ces.googleapis.com/evaluationResults.list
  • ces.googleapis.com/evaluationResults.get
  • ces.googleapis.com/evaluationDatasets.list
  • ces.googleapis.com/evaluationDatasets.get
  • ces.googleapis.com/evaluationRuns.list
  • ces.googleapis.com/evaluationRuns.get
  • ces.googleapis.com/scheduledEvaluationRuns.list
  • ces.googleapis.com/scheduledEvaluationRuns.get
  • ces.googleapis.com/changelogs.list
  • ces.googleapis.com/changelogs.get
  • ces.googleapis.com/omnichannels.get
  • ces.googleapis.com/omnichannels.list
  • ces.googleapis.com/apps.listTagBindings
  • ces.googleapis.com/apps.listEffectiveTags
  • ces.googleapis.com/assistantSessions.list
  • ces.googleapis.com/assistantSessions.get
  • ces.googleapis.com/routes.list
  • ces.googleapis.com/routes.get
  • ces.googleapis.com/endpointConfigs.list
  • ces.googleapis.com/endpointConfigs.get
  • ces.googleapis.com/sipDomains.list
  • ces.googleapis.com/sipDomains.get
  • ces.googleapis.com/securitySettings.get

Cliente de Gemini Enterprise para la experiencia del cliente (ces.googleapis.com/client)

Proporciona acceso de consulta a los agentes.

Permisos:

  • ces.googleapis.com/sessions.runSession
  • ces.googleapis.com/sessions.bidiRunSession
  • ces.googleapis.com/tools.execute

Editor de la app de Gemini Enterprise para la experiencia del cliente (ces.googleapis.com/appEditor)

Tiene control total sobre la configuración a nivel de la app. Administra el registro global, las configuraciones de audio y voz, los buckets de almacenamiento y las versiones de la app.

Roles básicos:

  • ces.googleapis.com/viewer

Permisos adicionales:

  • ces.googleapis.com/apps.create
  • ces.googleapis.com/apps.update
  • ces.googleapis.com/apps.delete
  • ces.googleapis.com/apps.import
  • ces.googleapis.com/apps.export
  • ces.googleapis.com/apps.runEvaluation
  • ces.googleapis.com/apps.createTagBinding
  • ces.googleapis.com/apps.deleteTagBinding
  • ces.googleapis.com/appVersions.create
  • ces.googleapis.com/appVersions.delete
  • ces.googleapis.com/appVersions.restore

Editor de agentes de Gemini Enterprise para la experiencia del cliente (ces.googleapis.com/agentEditor)

Tiene control total sobre las estructuras de nodos de agente, los flujos, las instrucciones y las devoluciones de llamadas. Puede agregar o quitar herramientas de los agentes (pero no crear herramientas nuevas).

Roles básicos:

  • ces.googleapis.com/viewer
  • ces.googleapis.com/client

Permisos adicionales:

  • ces.googleapis.com/agents.create
  • ces.googleapis.com/agents.update
  • ces.googleapis.com/agents.updateCallbacks
  • ces.googleapis.com/agents.updateInstructions
  • ces.googleapis.com/agents.updateTools
  • ces.googleapis.com/agents.updateGeneral
  • ces.googleapis.com/agents.delete
  • ces.googleapis.com/examples.create
  • ces.googleapis.com/examples.update
  • ces.googleapis.com/examples.delete

Editor de herramientas de Gemini Enterprise para la experiencia del cliente (ces.googleapis.com/toolsEditor)

Tiene control total sobre las herramientas, los conjuntos de herramientas y las integraciones.

Roles básicos:

  • ces.googleapis.com/viewer
  • ces.googleapis.com/client

Permisos adicionales:

  • ces.googleapis.com/tools.create
  • ces.googleapis.com/tools.update
  • ces.googleapis.com/tools.delete
  • ces.googleapis.com/toolsets.create
  • ces.googleapis.com/toolsets.update
  • ces.googleapis.com/toolsets.delete

Editor de lineamientos de Gemini Enterprise para la experiencia del cliente (ces.googleapis.com/guardrailsEditor)

Tiene control total sobre la configuración de seguridad y las protecciones.

Roles básicos:

- ces.googleapis.com/viewer
- ces.googleapis.com/client

Permisos adicionales:

- ces.googleapis.com/guardrails.create
- ces.googleapis.com/guardrails.update
- ces.googleapis.com/guardrails.delete

Editor de evaluaciones de la app de Gemini Enterprise para la experiencia del cliente (ces.googleapis.com/evalsEditor)

Tiene control total sobre los conjuntos de datos, las ejecuciones y los resultados de evaluaciones.

Roles básicos:

  • ces.googleapis.com/viewer
  • ces.googleapis.com/client

Permisos adicionales:

  • ces.googleapis.com/evaluations.create
  • ces.googleapis.com/evaluations.update
  • ces.googleapis.com/evaluations.delete
  • ces.googleapis.com/evaluationResults.delete
  • ces.googleapis.com/evaluationDatasets.create
  • ces.googleapis.com/evaluationDatasets.update
  • ces.googleapis.com/evaluationDatasets.delete
  • ces.googleapis.com/evaluationRuns.delete
  • ces.googleapis.com/scheduledEvaluationRuns.create
  • ces.googleapis.com/scheduledEvaluationRuns.update
  • ces.googleapis.com/scheduledEvaluationRuns.delete

Editor de configuración de seguridad de Gemini Enterprise para la experiencia del cliente (ces.googleapis.com/securitySettingsEditor)

Tiene control total sobre la configuración de seguridad en todo el proyecto.

Roles básicos:

  • ces.googleapis.com/viewer

Permisos adicionales:

  • ces.googleapis.com/securitySettings.update

Editor de implementación de Gemini Enterprise para la experiencia del cliente (ces.googleapis.com/deploymentEditor)

Capacidad para administrar entornos y, también, implementar versiones específicas de la app en ellos.

Roles básicos:

  • ces.googleapis.com/viewer

Permisos adicionales:

  • ces.googleapis.com/deployments.create
  • ces.googleapis.com/deployments.update
  • ces.googleapis.com/deployments.delete

Customer Experience Insights

CX Agent Studio se integra con CX Insights, y debes proporcionar los siguientes permisos de CX Insights a los principales que acceden a CX Agent Studio:

  • contactcenterinsights.googleapis.com/conversations.get
  • contactcenterinsights.googleapis.com/conversations.list

Estos permisos se incluyen automáticamente en los roles secundarios de ces.googleapis.com/admin y ces.googleapis.com/viewer. Sin embargo, si defines roles personalizados, asegúrate de incluir estos permisos en las definiciones de roles personalizados.

Como alternativa, puedes otorgar uno de los siguientes roles de CX Insights a los principales pertinentes:

  • contactcenterinsights.googleapis.com/viewer: Proporciona acceso de solo lectura a las conversaciones.
  • contactcenterinsights.googleapis.com/admin: Otorga acceso completo a las conversaciones.

Además de los roles, es posible que debas seguir los pasos para la configuración del motor de Discovery.

Solicitudes que implican acceso a Cloud Storage

Algunas solicitudes de CX Agent Studio acceden a objetos en Cloud Storage para leer o escribir datos. Cuando llamas a una de estas solicitudes, CX Agent Studio 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 CX Agent Studio, así como a los objetos de Cloud Storage.

Cuando usas una biblioteca cliente de Google y roles de IAM, consulta la guía de control de acceso de Cloud Storage para obtener información sobre los roles de Cloud Storage.

Cuando implementas tu propio cliente y usas OAuth, debes usar el siguiente alcance de OAuth:

  • https://www.googleapis.com/auth/cloud-platform (acceso a todos los recursos del proyecto)

Agrega una condición para restringir el acceso a una aplicación de agente

Cuando agregas o editas un principal, puedes crear vinculaciones de roles condicionales que restrinjan el acceso a una aplicación de agente.

La siguiente condición proporciona acceso a una aplicación de agente específica, así como a los recursos de nivel superior dentro del proyecto que necesita la aplicación de agente:

resource.name == "projects/PROJECT_ID" ||
resource.name.startsWith("projects/PROJECT_ID/locations/LOCATION_ID/apps/APP_ID") ||
resource.name.startsWith("projects/PROJECT_ID/locations/LOCATION_ID/operations") ||
resource.name.startsWith("projects/PROJECT_ID/locations/LOCATION_ID/sipDomains") ||
resource.name.startsWith("projects/PROJECT_ID/locations/LOCATION_ID/omnichannels") ||
resource.name.startsWith("projects/PROJECT_ID/locations/LOCATION_ID/dataStores") ||
resource.name.startsWith("projects/PROJECT_ID/locations/LOCATION_ID/routes") ||
resource.name.startsWith("projects/PROJECT_ID/locations/LOCATION_ID/endpointConfigs")

Para tener acceso a Customer Experience Insights, debes otorgar roles de Customer Experience Insights además de la concesión condicional.