Controllo dell'accesso

È normale che più membri del team collaborino alla creazione di un agente e che i servizi accedano all'agente. Utilizzando i ruoli, puoi controllare l'accesso e le autorizzazioni concesse ai principali.

Se utilizzi l'API, potresti anche avere una o più applicazioni che inviano richieste a un agente. In questo caso, puoi controllare l'accesso con gli account di servizio.

Puoi controllare l'accesso utilizzando Identity and Access Management (IAM) o la Console Dialogflow.

La Console di Dialogflow fornisce il ruolo di amministratore dell'agente all'utente che ha creato l'agente. A questo utente viene assegnato automaticamente il ruolo Proprietario progetto IAM nel progetto associato all'agente.

Gli amministratori dell'agente possono aggiungere sviluppatori e revisori all'agente nella Console di Dialogflow. Quando il ruolo Sviluppatore o Recensione viene concesso nella console Dialogflow, l'utente ottiene rispettivamente il ruolo Editor progetto IAM o Visualizzatore progetto IAM. Un modo alternativo per aggiungere sviluppatori e revisori all'agente è concedere agli utenti i ruoli IAM Project Editor o IAM Project Viewer corrispondenti nella console Google Cloud.

In alcune situazioni devi utilizzare la console Google Cloud:

  • Se vuoi modificare l'amministratore, aggiungere più amministratori per un agente o rimuovere amministratori per un agente, devi utilizzare la console Google Cloud.
  • Se hai integrazioni con altre risorse Google Cloud, come Cloud Functions, e non vuoi concedere l'accesso completo al progetto a un'applicazione, devi assegnare i ruoli dell'API Dialogflow (Amministratore, Cliente o Lettore) nella console Google Cloud per IAM.
  • Un sottoinsieme di ruoli IAM ha ruoli corrispondenti nella console Dialogflow. Se vuoi concedere un ruolo che non esiste nella console Dialogflow, devi utilizzare la console Google Cloud.

Ruoli

La tabella seguente elenca i ruoli comuni pertinenti a Dialogflow, la correlazione tra i ruoli della console Dialogflow e i ruoli IAM e i dettagli sulle autorizzazioni.

I riepiloghi delle autorizzazioni nella tabella utilizzano i seguenti termini:

  • Accesso completo: autorizzazione per modificare l'accesso, creare, eliminare, modificare e leggere qualsiasi risorsa.
  • Accesso in modifica: autorizzazione per creare, eliminare, modificare e leggere qualsiasi risorsa.
  • Accesso alla sessione: autorizzazione a chiamare metodi per risorse solo di runtime durante una conversazione, come il rilevamento dell'intento, l'aggiornamento del contesto, l'aggiornamento delle entità sessione o le interazioni con la conversazione di Agent Assist. Questo accesso fornisce un sottoinsieme di autorizzazioni presenti nell'accesso completo e di modifica.
  • Accesso in lettura: autorizzazione a leggere qualsiasi risorsa.
Ruolo della console di Dialogflow Ruolo IAM Riepilogo delle autorizzazioni Dettagli autorizzazione
Amministratore Progetto >
Proprietario
Concedi ai proprietari di progetti che hanno bisogno di accesso completo a tutte le risorse di Google Cloud e Dialogflow:
  • Accesso completo a tutte le risorse del progetto Google Cloud utilizzando la console o le API di Google Cloud.
  • Accesso completo agli agenti che utilizzano la console di Dialogflow.
  • Può rilevare l'intenzione utilizzando l'API.
  • Può modificare la versione dell'agente nella console di Dialogflow o utilizzando l'API.
Consulta le definizioni dei ruoli IAM di base.
Sviluppatore Progetto >
Editor
Concedi agli editor del progetto che hanno bisogno di accesso in modifica a tutte le risorse Google Cloud e Dialogflow:
  • Modifica l'accesso a tutte le risorse del progetto Google Cloud utilizzando la console o le API Google Cloud.
  • Modifica l'accesso agli agenti utilizzando la console di Dialogflow.
  • Può rilevare l'intenzione utilizzando l'API.
Consulta le definizioni dei ruoli IAM di base.
Revisore Progetto >
Visualizzatore
Concedi ai visualizzatori del progetto che hanno bisogno di accesso in lettura a tutte le risorse Google Cloud e Dialogflow:
  • Accesso in lettura a tutte le risorse del progetto Google Cloud utilizzando la console o le API Google Cloud.
  • L'accesso in lettura agli agenti che utilizzano la console o l'API Dialogflow non può utilizzare il simulatore.
  • Impossibile rilevare l'intenzione utilizzando l'API.
Consulta le definizioni dei ruoli IAM di base.
N/D Progetto >
Browser
Concedi ai visualizzatori di progetti che hanno bisogno di accesso in lettura per esplorare la gerarchia di un progetto, inclusi cartella, organizzazione e criterio IAM:
  • Accesso in lettura alla gerarchia dei progetti Google Cloud.
  • Nessun accesso agli agenti che utilizzano la console Dialogflow.
  • Impossibile rilevare l'intenzione utilizzando l'API.
Consulta Definizioni dei ruoli del progetto IAM.
N/D Dialogflow >
Amministratore API Dialogflow
Concedi agli amministratori dell'API Dialogflow che hanno bisogno di accesso completo alle risorse specifiche di Dialogflow:
  • Accesso completo a tutte le risorse di Dialogflow utilizzando la console o le API di Google Cloud.
  • Accesso in lettura agli agenti che utilizzano la console Dialogflow.
  • Può rilevare l'intenzione utilizzando l'API.
Consulta le definizioni dei ruoli IAM di Dialogflow.
N/D Dialogflow >
Client API Dialogflow
Concedi ai client API Dialogflow che eseguono chiamate di rilevamento dell'intenzione utilizzando l'API:
  • Accesso alla sessione alle risorse di Dialogflow di runtime utilizzando il simulatore o l'API Dialogflow.
  • Accesso limitato agli agenti che utilizzano la console di Dialogflow.
  • Può rilevare l'intenzione utilizzando l'API.
Consulta le definizioni dei ruoli IAM di Dialogflow.
N/D Dialogflow >
Editor agente console Dialogflow
Concedi agli editor della console di Dialogflow che modificano gli agenti esistenti:
  • Accesso completo a tutte le risorse di Dialogflow tramite la console Google Cloud.
  • Modifica l'accesso alla maggior parte dei dati dell'agente utilizzando la console di Dialogflow. Impossibile accedere all'editor incorporato per l'integrazione di Cloud Functions o dell'Assistente Google.
  • Può rilevare l'intenzione utilizzando l'API.
Consulta le definizioni dei ruoli IAM di Dialogflow.
N/D Dialogflow >
Lettore API Dialogflow
Concedi ai client dell'API Dialogflow che eseguono chiamate di sola lettura specifiche di Dialogflow utilizzando l'API:
  • Accesso in lettura a tutte le risorse Dialogflow tramite la console o le API Google Cloud.
  • Accesso in lettura agli agenti che utilizzano la console Dialogflow, non è possibile utilizzare il simulatore.
  • Impossibile rilevare l'intenzione utilizzando l'API.
Consulta le definizioni dei ruoli IAM di Dialogflow.

Controllare l'accesso con la console Google Cloud

Puoi controllare l'accesso con le impostazioni IAM. Consulta la guida introduttiva di IAM per istruzioni dettagliate su come aggiungere, modificare e rimuovere le autorizzazioni.

Per accedere alle impostazioni riportate di seguito, apri la pagina IAM nella console Google Cloud.

Aggiungere un utente o un account di servizio al progetto

Puoi concedere autorizzazioni a utenti o account di servizio concedendo loro ruoli nel progetto Google Cloud. Gli utenti vengono aggiunti fornendo il loro indirizzo email. Gli account di servizio vengono aggiunti anche fornendo il relativo indirizzo email associato. Devi aggiungere membri dell'account di servizio quando vuoi utilizzare un account di servizio per più progetti e agenti. Per trovare l'indirizzo email associato al tuo account di servizio, consulta la pagina IAM Account di servizio nella console Google Cloud.

Per aggiungere un membro:

  1. Fai clic sul pulsante Aggiungi nella parte superiore della pagina.
  2. Inserisci l'indirizzo email del membro.
  3. Seleziona un ruolo.
  4. Fai clic su Salva.

Cambia autorizzazioni

  1. Fai clic sul pulsante di modifica per il membro.
  2. Seleziona un altro ruolo.
  3. Fai clic su Salva.

Rimuovere un membro

  1. Fai clic sul pulsante di eliminazione per il membro.

Controllare l'accesso con la console di Dialogflow

Le opzioni di condivisione si trovano nelle impostazioni dell'agente. Per aprire le impostazioni di condivisione dell'agente:

  1. Vai alla console Dialogflow ES.
  2. Seleziona il tuo agente nella parte superiore del menu della barra laterale sinistra.
  3. Fai clic sul pulsante delle impostazioni accanto al nome dell'agente.
  4. Fai clic sulla scheda Condividi. Se non vedi la scheda Condividi, significa che non disponi del ruolo Amministratore agente richiesto.

Scheda Condividi che mostra gli utenti con il relativo livello di accesso.

Aggiungi un utente

  1. Inserisci l'indirizzo email dell'utente in Invita nuove persone.
  2. Seleziona un ruolo.
  3. Fai clic su Aggiungi.
  4. Fai clic su Salva.

Cambia autorizzazioni

  1. Trova l'utente nell'elenco.
  2. Seleziona un altro ruolo.
  3. Fai clic su Salva.

Rimuovere un utente

  1. Trova l'utente nell'elenco.

  2. Fai clic sul pulsante di eliminazione per l'utente.

  3. Fai clic su Salva.

Account di servizio creati automaticamente

Quando crei e utilizzi il tuo agente, Dialogflow crea automaticamente alcuni agenti di servizio.

Per visualizzare i ruoli concessi a questi agenti di servizio, attiva l'opzione Includi concessioni di ruoli fornite da Google nella pagina IAM.

Non devi eliminare, modificare o scaricare chiavi per nessuno di questi agenti di servizio, né devi utilizzare questi agenti di servizio per effettuare chiamate API dirette. Vengono utilizzati solo dal servizio Dialogflow per connettersi a una serie di servizi Google Cloud utilizzati dall'agente. Potresti dover contattare questi agenti di servizio via email durante la configurazione di determinate funzionalità di Dialogflow.

La seguente tabella descrive alcuni di questi agenti di servizio:

Modulo email IAM Finalità
service-project-number
@gcp-sa-dialogflow.iam.gserviceaccount.com
Viene utilizzato per collegare l'agente ai servizi che gestiscono il traffico di integrazione.
firebase-adminsdk-alphanum
@project-id.iam.gserviceaccount.com
Viene utilizzato per collegare l'agente ai servizi che gestiscono il traffico di integrazione dell'Assistente Google.
project-id
@appspot.gserviceaccount.com
Viene utilizzato per collegare l'agente ai servizi che gestiscono il traffico di integrazione dell'Assistente Google.

Trasferire il ruolo di amministratore

Per trasferire il ruolo di amministratore di un agente, l'amministratore esistente deve seguire i passaggi precedenti per aggiungere un nuovo amministratore. Una volta che il nuovo amministratore accetta il ruolo concesso, è possibile rimuovere il vecchio amministratore.

Se l'amministratore esistente non lavora più nella tua organizzazione e devi trasferire il ruolo di amministratore a un altro dipendente, hai due opzioni:

  • Un amministratore dell'organizzazione associata al progetto dell'agente ha le autorizzazioni per modificare l'amministratore dell'agente.
  • Se disponi delle autorizzazioni di lettura per l'agente, puoi esportarlo e importarlo in un agente in cui il dipendente desiderato è amministratore. Ciò potrebbe causare un tempo di riposo per un agente di produzione live durante la migrazione dell'agente e l'aggiornamento delle eventuali integrazioni.

OAuth

Se utilizzi le librerie client di Google per accedere a Dialogflow, non è necessario utilizzare OAuth direttamente, perché queste librerie gestiscono l'implementazione per te. Tuttavia, se stai implementando il tuo client, potresti dover implementare il tuo flusso OAuth. L'accesso all'API Dialogflow richiede uno dei seguenti ambiti OAuth:

  • https://www.googleapis.com/auth/cloud-platform (accesso a tutte le risorse del progetto)
  • https://www.googleapis.com/auth/dialogflow (accesso alle risorse di Dialogflow)

Richieste che richiedono l'accesso a Cloud Storage

Alcune richieste di Dialogflow accedono agli oggetti in Cloud Storage per leggere o scrivere dati. Quando chiami una di queste richieste, Dialogflow accede ai dati di Cloud Storage per conto dell'utente che effettua la chiamata. Ciò significa che l'autenticazione della richiesta deve disporre delle autorizzazioni per accedere a Dialogflow e agli oggetti Cloud Storage.

Quando utilizzi una libreria client di Google e i ruoli IAM, consulta la guida controllo dell'accesso di Cloud Storage per informazioni sui ruoli di Cloud Storage.

Quando implementi il tuo client e utilizzi OAuth, devi utilizzare il seguente ambito OAuth:

  • https://www.googleapis.com/auth/cloud-platform (accesso a tutte le risorse del progetto)