Controle de acesso

É 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 a principais.

É possível configurar o acesso usando o console do Dialogflow CX (acesse a documentação, abra o console) ou usando o Console do Google Cloud (acesse a documentação, abra o console) com o gerenciamento de identidade e acesso (IAM). O console do Google Cloud é usado para conceder papéis do IAM aos principais, enquanto o console do Dialogflow CX é usado para conceder papéis de agente de conversação (Dialogflow CX) aos principais. Os papéis do agente dos agentes de conversação (Dialogflow CX) são papéis predefinidos definidos pelos agentes de conversação (Dialogflow CX) que restringem o acesso a um agente ou aos recursos filhos de um agente específico.

Há algumas situações em que é necessário usar o console do Google Cloud:

  • O papel de proprietário do projeto do IAM é concedido por padrão ao usuário que criou o projeto proprietário do agente. Esse proprietário tem acesso total a todos os agentes no projeto. Se você quiser mudar o proprietário do projeto, use o console do Google Cloud.
  • Somente o acesso no nível do agente pode ser configurado pelo console do Dialogflow CX. Se você quiser configurar o acesso para envolvidos no projeto, use o console do Google Cloud.
  • Um subconjunto de papéis do IAM tem papéis correspondentes de agentes de conversação (Dialogflow CX). Se você quiser conceder um papel para envolvidos no projeto ou no nível do agente que não existe no console do Dialogflow CX, use o Console do Google Cloud.
  • Se você estiver criando um agente de repositório de dados com a interface do usuário da Vertex AI Conversation, use o console do Google Cloud.

Se você estiver usando a API, também será possível ter um ou mais aplicativos que enviam solicitações a um agente. Nesse caso, controle o acesso com as contas de serviço.

Controlar o acesso com o console do Dialogflow CX

Com o console do Dialogflow CX, é possível aplicar papéis convenientes configurados para o compartilhamento no nível do agente. Esses papéis se relacionam aos papéis do IAM com condições do IAM que limitam o acesso ao agente específico ou a um subconjunto de recursos filhos do agente.

Para acessar a configuração de papéis do agente no console do Dialogflow CX, você precisa receber o papel de administrador do IAM do projeto para o projeto associado. Esse papel é concedido no console do Google Cloud.

Papel de agente dos agentes de conversação (Dialogflow CX) Resumo Papel de IAM
Admin Concede acesso total para criar, atualizar, consultar, detectar intents e excluir o agente do console ou da API. Dialogflow > Administrador da API Dialogflow
Leitor Concede acesso de leitura para consultar (não detectar o intent) o agente do console ou da API. Dialogflow > Leitor da API Dialogflow
Cliente Concede acesso para detectar intents no console ou na API. Dialogflow > Cliente da API Dialogflow
Administrador de intents Concede acesso para criar, atualizar, excluir ou consultar as intents de um agente no console ou na API. Dialogflow > Administrador de intents do Dialogflow
Administrador do tipo de entidade Concede acesso para criar, atualizar, excluir ou consultar os tipos de entidade de um agente no console ou na API. Dialogflow > Administrador do tipo de entidade do Dialogflow
Administrador do webhook Concede acesso para criar, atualizar, excluir ou consultar os webhooks de um agente no console ou na API. Dialogflow > Administrador de webhook do Dialogflow
Administrador do caso de teste Concede acesso para criar, atualizar, excluir ou consultar os casos de teste de um agente no console ou na API. Dialogflow > Administrador de casos de teste do Dialogflow
Editor de fluxo Concede acesso para atualizar, consultar um fluxo específico e criar, atualizar, excluir ou consultar os recursos de fluxo (páginas, grupos de rotas e versões) no console ou na API. Dialogflow > Editor de fluxo do Dialogflow
Editor de ambiente Concede acesso para atualizar, consultar um ambiente específico e criar, atualizar, excluir ou consultar os recursos do ambiente (experimentos) no console ou na API. Dialogflow > Editor do ambiente do Dialogflow

Opções de compartilhamento são encontradas nas configurações do agente. Para abrir as configurações de compartilhamento do agente:

  1. Abra o console do Dialogflow CX.
  2. Escolha seu projeto do Google Cloud.
  3. Selecione seu agente.
  4. Clique em Configurações do agente.
  5. Clique na guia Compartilhar.

Adicionar um principal

  1. Clique em Add.
  2. Digite o endereço de e-mail do usuário, grupo ou conta de serviço.
  3. Selecione Usuário, Grupo ou Conta de serviço como o tipo de e-mail.
  4. O papel Leitor do Dialogflow é adicionado por padrão, o que é necessário para que os usuários acessem o console do Dialogflow CX.
  5. Clique em Adicionar função em Atribuir funções.
  6. Selecione um tipo de papel em Tipo.
  7. Para os papéis Editor de fluxo e Editor de ambiente, selecione fluxos ou ambientes específicos ou mantenha a opção padrão Todos.
  8. Como alternativa, defina a data de validade do papel.
  9. Clique em Save.

Alterar funções principais

  1. Clique no principal na lista.
  2. Atualize os papéis para esse principal no pop-up.
  3. Clique em Save.

Remover uma conta principal

  1. Encontre o principal na lista.
  2. Clique no botão de exclusão no principal.
  3. Clique em OK.

Controlar o acesso com o console do Google Cloud

É possível controlar o acesso com as configurações do IAM. Consulte o guia de início rápido do IAM para ver as instruções detalhadas sobre como adicionar, editar e remover permissões.

Para acessar as configurações abaixo, abra a página IAM no console do Google Cloud.

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 projeto do Google Cloud. 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 console do Google Cloud.

Para adicionar um principal, faça o seguinte:

  1. Clique no botão de adição na parte superior da página.
  2. Digite o endereço de e-mail do principal.
  3. Selecione um papel.
  4. Clique em Salvar.

Alterar permissões

  1. Clique no botão de edição no principal.
  2. Selecione um papel diferente.
  3. Clique em Save.

Remover uma conta principal

  1. Clique no botão de exclusão no principal.

Adicionar uma condição para restringir o acesso a um agente

Ao adicionar ou editar um principal, é possível criar uma condição do IAM que restrinja o acesso a um agente.

Exemplo:

{
    "expression": "resource.name.startsWith(\"projects/PROJECT_ID/locations/REGION_ID/agents/AGENT_ID\")",
    "title": "For Conversational Agents (Dialogflow CX) Agent AGENT_ID"
}

Essa condição fornece acesso básico a um agente específico. Por exemplo, uma conta de serviço com essa condição só pode chamar a API de agentes de conversação (Dialogflow CX) para acessar o agente especificado na condição do projeto, mas não outros agentes no projeto.

Para adicionar essa condição a um papel concedido a um principal, faça o seguinte:

  1. Selecione um principal.
  2. Clique no botão de edição no principal.
  3. Clique em Adicionar condição.
  4. No campo Título, digite For Conversational Agents (Dialogflow CX) Agent AGENT_ID e substitua AGENT_ID pelo ID do agente.
  5. Você pode inserir qualquer descrição.
  6. Selecione o Editor de condições para criar sua condição.
  7. Adicione a expressão resource.name.startsWith("projects/PROJECT_ID/locations/REGION_ID/agents/AGENT_ID"), substituindo AGENT_ID pelo ID do agente e PROJECT_ID pelo ID do projeto.
  8. Clique em Save.

Papéis IAM

A tabela a seguir lista os papéis comuns do IAM relevantes para agentes de conversação (Dialogflow CX). Os resumos de permissões na tabela usam os seguintes termos:

  • Acesso total: permissão para modificar, criar, excluir, editar e ler qualquer recurso.
  • Acesso de edição: permissão para criar, excluir, editar e ler qualquer recurso.
  • Acesso à sessão: permissão para chamar métodos de recursos somente de execução durante uma conversa, como detectar intent, atualizar o contexto, atualizar entidades de sessão ou interações de conversa do Assistente do agente.
  • Acesso de leitura: permissão para ler qualquer recurso.
Papel do IAM Resumo da permissão Detalhes da permissão
Projeto >
Proprietário
Conceda aos proprietários do projeto que precisam de acesso total a todos os recursos do Google Cloud e dos agentes de conversação (Dialogflow CX):
  • Acesso total a todos os recursos do projeto do Google Cloud usando o console ou as APIs do Google Cloud.
  • Acesso total aos agentes que usam o console do Dialogflow CX.
  • Pode detectar intent usando a API.
Consulte Definições dos papéis básicos do IAM.
Projeto >
Editor
Conceda aos editores do projeto que precisam de acesso para editar a todos os recursos do Google Cloud e dos agentes de conversação (Dialogflow CX):
  • Edita o acesso a todos os recursos do projeto do Google Cloud usando o console ou as APIs do Google Cloud.
  • Edite o acesso a agentes usando o console do Dialogflow CX.
  • Pode detectar intent usando a API.
Consulte Definições dos papéis básicos do IAM.
Projeto >
Leitor
Conceda aos leitores do projeto que precisam de acesso de leitura a todos os recursos do Google Cloud e dos agentes de conversação (Dialogflow CX):
  • Acesso de leitura a todos os recursos do projeto do Google Cloud usando o console ou as APIs do Google Cloud.
  • Acesso de leitura a agentes que usam o console ou a API do Dialogflow CX, não é possível usar o simulador.
  • Não é possível detectar intent usando a API.
Consulte Definições dos papéis básicos do IAM.
Projeto >
Administrador do IAM
Conceda a administradores de IAM do projeto que precisam de acesso para editar a configuração dos papéis de agentes de agentes de conversação (Dialogflow CX). Consulte Definições de papéis do gerenciador de recursos do IAM.
Projeto >
Navegador
Concede a navegadores do projeto que precisam de acesso de leitura para navegar na hierarquia de um projeto, incluindo a pasta, a organização e a política do Cloud IAM:
  • Acesso de leitura à hierarquia de projetos do Google Cloud.
  • Sem acesso aos agentes que usam o console do Dialogflow CX.
  • Não é possível detectar intent usando a API.
Consulte Definições de papéis do projeto do IAM.
Dialogflow >
Administrador da API Dialogflow
Conceda a administradores da API de agentes de conversação (Dialogflow CX) que precisam de acesso total a recursos específicos de agentes de conversação (Dialogflow CX):
  • Acesso total a todos os recursos dos agentes de conversação (Dialogflow CX) usando o console do Google Cloud ou as APIs.
  • Acesso total aos agentes que usam o console do Dialogflow CX.
  • Pode detectar intent usando a API.
Consulte Definições de papéis do IAM do Dialogflow.
Dialogflow >
Cliente da API Dialogflow
Conceda a clientes da API de agentes de conversação (Dialogflow CX) que realizam chamadas de intent usando a API:
  • Acesso de sessão aos recursos de agentes de Conversation AI (Dialogflow CX) no ambiente de execução usando o simulador ou a API de agentes de Conversation AI (Dialogflow CX).
  • Acesso limitado a agentes que usam o console do Dialogflow CX.
  • Pode detectar intent usando a API.
Consulte Definições de papéis do IAM do Dialogflow.
Dialogflow >
Editor de agente do console do Dialogflow CX
Conceda aos editores do console do Dialogflow CX que editam agentes:
  • Acesso total a todos os recursos de agentes de conversação (Dialogflow CX) usando o console do Google Cloud.
  • Edite o acesso à maioria dos dados do agente usando o console do Dialogflow CX.
  • Pode detectar intent usando a API.
Consulte Definições de papéis do IAM do Dialogflow.
Dialogflow >
Leitor da API Dialogflow
Conceda a clientes da API Dialogflow que realizem chamadas somente leitura específicas de agentes de conversação (Dialogflow CX) usando a API:
  • Acesso de leitura a todos os recursos de agentes de conversação (Dialogflow CX) usando o console do Google Cloud ou as APIs.
  • Acesso de leitura a agentes que usam o console do Dialogflow CX, não é possível usar o simulador.
  • Não é possível detectar intent usando a API.
Consulte Definições de papéis do IAM do Dialogflow.
Administrador do Discovery Engine Conceder aos usuários que criam agentes de repositório de dados com a interface do usuário da Vertex AI Agents. Consulte Outras definições de papéis.

OAuth

Se você estiver usando as bibliotecas de cliente do Google para acessar agentes de conversação (CX do Dialogflow), não será necessário usar o OAuth diretamente, porque essas bibliotecas cuidam da implementação. No entanto, se você estiver implementando seu próprio cliente, talvez seja necessário implementar seu próprio fluxo OAuth. O acesso à API de agentes de conversação (Dialogflow CX) requer um dos seguintes escopos do OAuth:

  • https://www.googleapis.com/auth/cloud-platform (acesso a todos os recursos do projeto)
  • https://www.googleapis.com/auth/dialogflow (acesso aos recursos de agentes de conversação (Dialogflow CX))

Solicitações que envolvem acesso ao Cloud Storage

Alguns agentes de conversação (Dialogflow CX) solicitam objetos de acesso no Cloud Storage para ler ou gravar dados. Quando você chama uma dessas solicitações, os agentes de conversação (Dialogflow CX) acessam 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 agentes de conversação (Dialogflow CX) 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, use o seguinte escopo do OAuth:

  • https://www.googleapis.com/auth/cloud-platform (acesso a todos os recursos do projeto)

Controle de acesso ao console do Agente do Criador

Consulte o guia de controle de acesso do Vertex AI Agent Builder e do Discovery Engine.

Papéis personalizados para acesso à ferramenta de playbook

É possível fornecer controle de acesso granular para ferramentas de playbook usando permissões e funções personalizadas.

Para listar as permissões disponíveis, acesse a ferramenta de pesquisa de permissões e pesquise dialogflow.tools.

Usando essas permissões, é possível criar funções personalizadas.