É 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.
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.
É possível controlar o acesso usando o gerenciamento de identidade e acesso (IAM, na sigla em inglês) ou o Console do Dialogflow.
O Console do Dialogflow fornece o papel de administrador do agente ao usuário que criou o agente. Esse usuário recebe automaticamente o papel de proprietário do projeto do IAM no projeto associado ao agente.
Os administradores do agente podem adicionar desenvolvedores e revisores ao agente no Console do Dialogflow. Quando o papel de desenvolvedor ou revisor é concedido no Console do Dialogflow, o usuário recebe o papel de editor de projeto do IAM ou de leitor de projeto do IAM, respectivamente. Uma maneira alternativa de adicionar desenvolvedores e revisores ao agente é conceder aos usuários os papéis correspondentes de editor de projeto do IAM ou leitor de projeto do IAM em o Google Cloud console.
Estas são algumas situações em que você precisa usar o Google Cloud console:
- Se você quiser alterar o administrador, adicionar vários administradores a um agente, ou remover administradores de um agente, será necessário usar o Google Cloud console.
- Se você tiver integrações com outros Google Cloud recursos, como o Cloud Functions, e não quiser conceder acesso total do projeto a um aplicativo, atribua os papéis da API Dialogflow (administrador, cliente ou leitor) no Google Cloud console para IAM.
- Um subconjunto de papéis do IAM tem papéis correspondentes no Console do Dialogflow. Se você quiser conceder um papel que não existe no Console do Dialogflow, use o Google Cloud console.
Papéis
A tabela a seguir lista os papéis comuns relevantes para o Dialogflow, a correlação entre os papéis do Console do Dialogflow e os papéis do IAM, além de detalhes sobre as permissões.
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 da sessão ou interações de conversa do Agent Assist. Esse acesso fornece um subconjunto de permissões encontradas no acesso total e de edição.
- Acesso de leitura: Permissão para ler qualquer recurso.
| Papel no Console do Dialogflow | Papel do IAM | Resumo da permissão | Detalhes da permissão |
|---|---|---|---|
| Admin | Projeto > Proprietário |
Conceda a proprietários de projetos
que precisam de acesso total a todos os recursos do Google Cloud e do Dialogflow:
|
Consulte Definições dos papéis papel básico IAM. |
| Developer | Projeto > Editor |
Conceda a editores de projetos
que precisam de acesso para editar a todos os recursos doe do Dialogflow:
|
Consulte Definições dos papéis papel básico IAM. |
| Revisor | Projeto > Leitor |
Conceda aos visualizadores do projeto
que precisam de acesso de leitura a todos os recursos doe Google Cloud e do Dialogflow:
|
Consulte Definições dos papéis papel básico IAM. |
| N/A | Projeto > Navegador |
Conceda 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 IAM:
|
Consulte Definições de papéis do projeto do IAM. |
| N/D | Dialogflow > Administrador da API Dialogflow |
Conceda a administradores da API Dialogflow
que precisam de acesso total a recursos específicos do Dialogflow:
|
Consulte Definições de papéis do IAM do Dialogflow. |
| N/A | Dialogflow > Cliente da API Dialogflow |
Conceda a clientes da API Dialogflow
que realizam chamadas de detecção de intent usando a API:
|
Consulte Definições de papéis do IAM do Dialogflow. |
| N/A | Dialogflow > Editor de agente do Console do Dialogflow |
Conceda aos editores do Console do Dialogflow
que editam agentes existentes:
|
Consulte Definições de papéis do IAM do Dialogflow. |
| N/A | Dialogflow > Leitor da API Dialogflow |
Conceda a clientes da API Dialogflow
que realizem chamadas somente leitura especificamente do Dialogflow
usando a API:
|
Consulte Definições de papéis do IAM do Dialogflow. |
Controlar o acesso com o Google Cloud console
É 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 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 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. Você precisa adicionar membros da conta de serviço quando quiser usar uma conta de serviço para vários projetos e agentes. 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.
Para adicionar um membro:
- Clique no botão de adição na parte superior da página.
- Digite o endereço de e-mail do membro.
- Selecione um papel.
- Clique em Salvar.
Alterar permissões
- Clique no botão de edição no membro.
- Selecione um papel diferente.
- Clique em Salvar.
Remover um membro
- Clique no botão de exclusão no membro.
Controlar o acesso com o Console do Dialogflow
Opções de compartilhamento são encontradas nas configurações do agente. Para abrir as configurações de compartilhamento do agente:
- Acesse o console do Dialogflow ES.
- Selecione seu agente perto da parte superior do menu da barra lateral esquerda.
- Clique no botão de configurações ao lado do nome do agente.
- Clique na guia Compartilhar. Se a guia Compartilhar não for exibida, é porque você não tem o papel de administrador do agente necessário.
Adicionar um usuário
- Digite o endereço de e-mail do usuário abaixo de Convidar novas pessoas.
- Selecione um papel.
- Clique em Adicionar.
- Clique em Salvar.
Alterar permissões
- Encontre o usuário na lista.
- Selecione um papel diferente.
- Clique em Salvar.
Remover um usuário
Encontre o usuário na lista.
Clique no botão de exclusão no usuário.
Clique em Salvar.
Contas de serviço criadas automaticamente
Quando você cria e trabalha com o agente, o Dialogflow cria alguns agentes de serviço automaticamente.
Para conferir os papéis concedidos a esses agentes de serviço, ative a opção Incluir concessões de papel fornecidas pelo Google na página do IAM.
Não exclua, edite nem faça o download de chaves de nenhum desses agentes de serviço. Além disso, não use-os para fazer chamadas diretas à API. Elas são usados apenas pelo serviço Dialogflow para se conectar a uma variedade de Google Cloud serviços usados pelo agente. Talvez seja necessário consultar esses agentes de serviço por e-mail ao configurar determinados recursos do Dialogflow.
A tabela a seguir descreve alguns desses agentes de serviço:
| Formulário de e-mail do IAM | Finalidade |
|---|---|
| service-project-number @gcp-sa-dialogflow.iam.gserviceaccount.com |
Usada para conectar o agente aos serviços que gerenciam o tráfego de integração. |
| firebase-adminsdk-alphanum @project-id.iam.gserviceaccount.com |
Usada para conectar o agente aos serviços que gerenciam o tráfego de integração com o Google Assistente. |
| project-id @appspot.gserviceaccount.com |
Usada para conectar o agente aos serviços que gerenciam o tráfego de integração com o Google Assistente. |
Transferir o papel de administrador
Para transferir o papel de administrador de um agente, o administrador atual precisa seguir as etapas acima para adicionar um novo administrador. Depois que o novo administrador aceita o papel concedido, é seguro remover o administrador antigo.
Se o administrador atual não trabalhar mais na sua organização e você precisar que o papel de administrador seja transferido para outro funcionário, você terá duas opções:
- Um administrador da organização associado ao projeto do agente tem permissões para modificar o administrador do agente.
- Se você tiver permissões de leitura para o agente, poderá exportá-lo e importá-lo para um agente em que o funcionário desejado seja administrador. Isso pode criar a inatividade de um agente de produção real enquanto o agente é migrado e as integrações são atualizadas.
OAuth
Se você estiver usando bibliotecas de cliente do Google para acessar o Dialogflow, não será necessário usar OAuth diretamente, porque essas bibliotecas processam a implementação para você. No entanto, se você estiver implementando seu próprio cliente, talvez seja necessário implementar seu próprio fluxo OAuth. O acesso à API Dialogflow 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 do Dialogflow)
Solicitações que envolvem acesso ao Cloud Storage
Algumas solicitações do Dialogflow acessam objetos em Cloud Storage para leitura ou gravação de dados. Quando você chama uma dessas solicitações, o Dialogflow acessa os dados do Cloud Storage em nome do autor da chamada. Isso significa que a autenticação da solicitação precisa ter permissões para acessar o Dialogflow 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 OAuth, é necessário usar o seguinte escopo do OAuth:
https://www.googleapis.com/auth/cloud-platform(acesso a todos os recursos do projeto)