É comum que vários membros da equipe colaborem na criação de um agente e que os serviços acessem o agente. Com os papéis, é possível controlar o acesso e as permissões concedidas aos principais.
É possível configurar o acesso usando o Google Cloud console com gerenciamento de identidade e acesso (IAM). O Google Cloud console é usado para conceder papéis do IAM aos principais. Consulte o guia de início rápido do IAM para instruções detalhadas sobre como adicionar, editar e remover permissões.
Para acessar as configurações, abra a página do IAM no Google Cloud console.
Adicionar um usuário ou uma conta de serviço ao projeto
É possível conceder permissões a usuários ou contas de serviço concedendo a eles papéis no seu Google Cloud projeto. Os usuários são adicionados fornecendo os respectivos endereços de e-mail. As contas de serviço também são adicionadas fornecendo o endereço de e-mail associado a elas. É necessário adicionar contas de serviço quando você quiser usar uma conta de serviço para vários projetos. Para encontrar o endereço de e-mail associado à sua conta de serviço, consulte a página Contas de serviço do IAM no Google Cloud console.
Adicionar um principal
Para adicionar um principal, faça o seguinte:
- Clique em na parte de cima da página.
- Digite o endereço de e-mail do principal.
- Selecione um papel.
- Clique em Salvar.
Alterar permissões
Para mudar as permissões, faça o seguinte:
- Clique em no principal.
- Selecione um papel diferente.
- Clique em Save.
Remover uma conta principal
Para remover um principal, clique em no principal.
Papéis IAM
Os seguintes papéis estão disponíveis para acessar o CX Agent Studio.
Administrador do Gemini Enterprise for Customer Experience (ces.googleapis.com/admin)
Isso fornece acesso total aos recursos.
Papéis básicos:
ces.googleapis.com/viewerces.googleapis.com/clientcontactcenterinsights.googleapis.com/admin
Outras permissões:
ces.googleapis.com/operations.deleteces.googleapis.com/operations.cancelces.googleapis.com/apps.createces.googleapis.com/apps.updateces.googleapis.com/apps.deleteces.googleapis.com/apps.importces.googleapis.com/apps.exportces.googleapis.com/apps.runEvaluationces.googleapis.com/agents.createces.googleapis.com/agents.updateces.googleapis.com/agents.updateCallbacksces.googleapis.com/agents.updateInstructionsces.googleapis.com/agents.updateToolsces.googleapis.com/agents.updateGeneralces.googleapis.com/agents.deleteces.googleapis.com/examples.createces.googleapis.com/examples.updateces.googleapis.com/examples.deleteces.googleapis.com/tools.createces.googleapis.com/tools.updateces.googleapis.com/tools.deleteces.googleapis.com/guardrails.createces.googleapis.com/guardrails.updateces.googleapis.com/guardrails.deleteces.googleapis.com/toolsets.createces.googleapis.com/toolsets.updateces.googleapis.com/toolsets.deleteces.googleapis.com/deployments.createces.googleapis.com/deployments.updateces.googleapis.com/deployments.deleteces.googleapis.com/conversations.deleteces.googleapis.com/evaluations.createces.googleapis.com/evaluations.updateces.googleapis.com/evaluations.deleteces.googleapis.com/evaluationResults.deleteces.googleapis.com/evaluationDatasets.createces.googleapis.com/evaluationDatasets.updateces.googleapis.com/evaluationDatasets.deleteces.googleapis.com/evaluationRuns.deleteces.googleapis.com/scheduledEvaluationRuns.createces.googleapis.com/scheduledEvaluationRuns.updateces.googleapis.com/scheduledEvaluationRuns.deleteces.googleapis.com/appVersions.createces.googleapis.com/appVersions.deleteces.googleapis.com/appVersions.restoreces.googleapis.com/omnichannels.createces.googleapis.com/omnichannels.updateces.googleapis.com/omnichannels.deleteces.googleapis.com/apps.createTagBindingces.googleapis.com/apps.deleteTagBindingces.googleapis.com/apps.listTagBindingsces.googleapis.com/apps.listEffectiveTagsces.googleapis.com/assistantSessions.createces.googleapis.com/routes.createces.googleapis.com/routes.updateces.googleapis.com/routes.deleteces.googleapis.com/endpointConfigs.createces.googleapis.com/endpointConfigs.updateces.googleapis.com/endpointConfigs.deleteces.googleapis.com/sipDomains.createces.googleapis.com/sipDomains.updateces.googleapis.com/sipDomains.deleteces.googleapis.com/securitySettings.update
Leitor do Gemini Enterprise for Customer Experience (ces.googleapis.com/viewer)
Isso fornece acesso somente leitura aos recursos.
Papéis básicos:
contactcenterinsights.googleapis.com/viewer
Outras permissões:
cloudresourcemanager.googleapis.com/projects.getcloudresourcemanager.googleapis.com/projects.listces.googleapis.com/operations.listces.googleapis.com/operations.getces.googleapis.com/locations.listces.googleapis.com/locations.getces.googleapis.com/apps.listces.googleapis.com/apps.getces.googleapis.com/agents.listces.googleapis.com/agents.getces.googleapis.com/examples.listces.googleapis.com/examples.getces.googleapis.com/tools.listces.googleapis.com/tools.getces.googleapis.com/guardrails.listces.googleapis.com/guardrails.getces.googleapis.com/toolsets.listces.googleapis.com/toolsets.getces.googleapis.com/deployments.listces.googleapis.com/deployments.getces.googleapis.com/conversations.listces.googleapis.com/conversations.getces.googleapis.com/appVersions.listces.googleapis.com/appVersions.getces.googleapis.com/evaluations.listces.googleapis.com/evaluations.getces.googleapis.com/evaluationResults.listces.googleapis.com/evaluationResults.getces.googleapis.com/evaluationDatasets.listces.googleapis.com/evaluationDatasets.getces.googleapis.com/evaluationRuns.listces.googleapis.com/evaluationRuns.getces.googleapis.com/scheduledEvaluationRuns.listces.googleapis.com/scheduledEvaluationRuns.getces.googleapis.com/changelogs.listces.googleapis.com/changelogs.getces.googleapis.com/omnichannels.getces.googleapis.com/omnichannels.listces.googleapis.com/apps.listTagBindingsces.googleapis.com/apps.listEffectiveTagsces.googleapis.com/assistantSessions.listces.googleapis.com/assistantSessions.getces.googleapis.com/routes.listces.googleapis.com/routes.getces.googleapis.com/endpointConfigs.listces.googleapis.com/endpointConfigs.getces.googleapis.com/sipDomains.listces.googleapis.com/sipDomains.getces.googleapis.com/securitySettings.get
Cliente do Gemini Enterprise for Customer Experience (ces.googleapis.com/client)
Isso fornece acesso de consulta aos agentes.
Permissões:
ces.googleapis.com/sessions.runSessionces.googleapis.com/sessions.bidiRunSessionces.googleapis.com/tools.execute
Editor de apps do Gemini Enterprise for Customer Experience (ces.googleapis.com/appEditor)
Controle total sobre as configurações no nível do app. Gerencia registros globais, configurações de áudio/voz, buckets de armazenamento e versões de apps.
Papéis básicos:
ces.googleapis.com/viewer
Outras permissões:
ces.googleapis.com/apps.createces.googleapis.com/apps.updateces.googleapis.com/apps.deleteces.googleapis.com/apps.importces.googleapis.com/apps.exportces.googleapis.com/apps.runEvaluationces.googleapis.com/apps.createTagBindingces.googleapis.com/apps.deleteTagBindingces.googleapis.com/appVersions.createces.googleapis.com/appVersions.deleteces.googleapis.com/appVersions.restore
Editor de agentes do Gemini Enterprise for Customer Experience (ces.googleapis.com/agentEditor)
Controle total sobre estruturas de nós, fluxos, instruções e callbacks do agente. Pode adicionar/remover ferramentas de agentes (mas não criar novas ferramentas).
Papéis básicos:
ces.googleapis.com/viewerces.googleapis.com/client
Outras permissões:
ces.googleapis.com/agents.createces.googleapis.com/agents.updateces.googleapis.com/agents.updateCallbacksces.googleapis.com/agents.updateInstructionsces.googleapis.com/agents.updateToolsces.googleapis.com/agents.updateGeneralces.googleapis.com/agents.deleteces.googleapis.com/examples.createces.googleapis.com/examples.updateces.googleapis.com/examples.delete
Editor de ferramentas do Gemini Enterprise for Customer Experience (ces.googleapis.com/toolsEditor)
Controle total sobre ferramentas, conjuntos de ferramentas e integrações.
Papéis básicos:
ces.googleapis.com/viewerces.googleapis.com/client
Outras permissões:
ces.googleapis.com/tools.createces.googleapis.com/tools.updateces.googleapis.com/tools.deleteces.googleapis.com/toolsets.createces.googleapis.com/toolsets.updateces.googleapis.com/toolsets.delete
Editor de proteções do Gemini Enterprise for Customer Experience (ces.googleapis.com/guardrailsEditor)
Controle total sobre as configurações de segurança e as proteções.
Papéis básicos:
- ces.googleapis.com/viewer
- ces.googleapis.com/client
Outras permissões:
- ces.googleapis.com/guardrails.create
- ces.googleapis.com/guardrails.update
- ces.googleapis.com/guardrails.delete
Editor de avaliações do Gemini Enterprise para experiência do cliente (ces.googleapis.com/evalsEditor)
Controle total sobre conjuntos de dados de avaliação, execuções e resultados.
Papéis básicos:
ces.googleapis.com/viewerces.googleapis.com/client
Outras permissões:
ces.googleapis.com/evaluations.createces.googleapis.com/evaluations.updateces.googleapis.com/evaluations.deleteces.googleapis.com/evaluationResults.deleteces.googleapis.com/evaluationDatasets.createces.googleapis.com/evaluationDatasets.updateces.googleapis.com/evaluationDatasets.deleteces.googleapis.com/evaluationRuns.deleteces.googleapis.com/scheduledEvaluationRuns.createces.googleapis.com/scheduledEvaluationRuns.updateces.googleapis.com/scheduledEvaluationRuns.delete
Editor de configurações de segurança do Gemini Enterprise for Customer Experience (ces.googleapis.com/securitySettingsEditor)
Controle total sobre as configurações de segurança em todo o projeto.
Papéis básicos:
ces.googleapis.com/viewer
Outras permissões:
ces.googleapis.com/securitySettings.update
Editor de implantações do Gemini Enterprise for Customer Experience (ces.googleapis.com/deploymentEditor)
Capacidade de gerenciar ambientes e implantar versões específicas de apps neles.
Papéis básicos:
ces.googleapis.com/viewer
Outras permissões:
ces.googleapis.com/deployments.createces.googleapis.com/deployments.updateces.googleapis.com/deployments.delete
Customer Experience Insights
O CX Agent Studio é integrado ao CX Insights, e você precisa fornecer as seguintes permissões do CX Insights aos principais que acessam o CX Agent Studio:
contactcenterinsights.googleapis.com/conversations.getcontactcenterinsights.googleapis.com/conversations.list
Essas permissões são incluídas automaticamente pelos papéis filhos de ces.googleapis.com/admin e ces.googleapis.com/viewer.
No entanto, se você estiver definindo funções personalizadas, inclua essas permissões nas definições de funções personalizadas.
Como alternativa, você pode conceder um dos seguintes papéis do CX Insights aos principais relevantes:
contactcenterinsights.googleapis.com/viewer: fornece acesso somente leitura a conversascontactcenterinsights.googleapis.com/admin: concede acesso total a conversas
Além dos papéis, talvez seja necessário seguir as etapas de configuração do mecanismo Discovery.
Solicitações que envolvem acesso ao Cloud Storage
Algumas solicitações do CX Agent Studio acessam objetos em Cloud Storage para ler ou gravar dados. Quando você chama uma dessas solicitações, o CX Agent Studio acessa os dados do Cloud Storage em nome do autor da chamada. Isso significa que a autenticação de solicitação precisa ter permissões para acessar o CX Agent Studio e os objetos do Cloud Storage.
Ao usar uma biblioteca de cliente do Google e papéis do IAM, consulte o guia de controle de acesso do Cloud Storage para informações sobre os papéis do Cloud Storage.
Ao implementar seu próprio cliente e usar o OAuth, você precisa usar o seguinte escopo do OAuth:
https://www.googleapis.com/auth/cloud-platform(acesso a todos os recursos do projeto)
Adicionar uma condição para restringir o acesso a um aplicativo de agente
Ao adicionar ou editar um principal, é possível criar vinculações de papéis condicionais que restringem o acesso a um aplicativo de agente.
A condição a seguir fornece acesso a um aplicativo de agente específico, bem como aos recursos de nível superior no projeto necessários para o aplicativo 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 ter acesso ao Customer Experience Insights, você deve conceder papéis do Customer Experience Insights além da concessão condicional.