È comune 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 alle entità.
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 i service account.
Puoi controllare l'accesso utilizzando Identity and Access Management (IAM) o la console Dialogflow.
La console Dialogflow fornisce il ruolo Amministratore agente all'utente che ha creato l'agente. Questo utente ottiene automaticamente il ruolo IAM Project Owner nel progetto associato all'agente.
Gli amministratori degli agenti possono aggiungere sviluppatori e revisori all'agente nella console Dialogflow. Quando il ruolo Sviluppatore o Revisore viene concesso nella console Dialogflow, l'utente riceve rispettivamente il ruolo IAM Project Editor o IAM Project Viewer. 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 cambiare l'amministratore, aggiungere più amministratori per un agente o rimuovere gli 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, Client o Reader) nella console Google Cloud per IAM.
- Un sottoinsieme di ruoli IAM ha ruoli della console Dialogflow corrispondenti. 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 per 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 a 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 di sola runtime durante una conversazione, ad esempio rilevamento dell'intent, aggiornamento del contesto, aggiornamento delle entità sessione o interazioni di conversazione di Agent Assist. Questo accesso fornisce un sottoinsieme di autorizzazioni presenti nell'accesso completo e in modifica.
- Accesso in lettura: autorizzazione a leggere qualsiasi risorsa.
| Ruolo della console Dialogflow | Ruolo IAM | Riepilogo delle autorizzazioni | Dettagli autorizzazione |
|---|---|---|---|
| Amministratore | Project > Owner |
Concedi ai Project Owner che hanno bisogno di accesso completo a tutte le risorse Google Cloud e Dialogflow:
|
Consulta le definizioni dei ruoli IAM di base. |
| Sviluppatore | Progetto > Editor |
Concedi agli editor del progetto che necessitano dell'accesso in modifica a tutte le risorse Google Cloud e Dialogflow:
|
Consulta le definizioni dei ruoli IAM di base. |
| Reviewer | Progetto > Visualizzatore |
Concedi ai visualizzatori del progetto che necessitano dell'accesso in lettura a tutte le risorse Google Cloud e Dialogflow:
|
Consulta le definizioni dei ruoli IAM di base. |
| N/D | Progetto > Browser |
Concedi ai browser di progetto che necessitano dell'accesso in lettura per esplorare la gerarchia di un progetto, inclusi cartella, organizzazione e policy IAM:
|
Consulta le definizioni dei ruoli di progetto IAM. |
| N/D | Dialogflow > Amministratore API Dialogflow |
Concedi agli amministratori dell'API Dialogflow che necessitano di accesso completo alle risorse specifiche di Dialogflow:
|
Consulta le definizioni dei ruoli IAM di Dialogflow. |
| N/D | Dialogflow > Client API Dialogflow |
Concedi ai client API Dialogflow che eseguono chiamate di rilevamento intent utilizzando l'API:
|
Consulta le definizioni dei ruoli IAM di Dialogflow. |
| N/D | Dialogflow > Editor degli agenti della console Dialogflow |
Concedi agli editor della console Dialogflow che modificano gli agenti esistenti:
|
Consulta le definizioni dei ruoli IAM di Dialogflow. |
| N/D | Dialogflow > Dialogflow API Reader |
Concedi ai client API Dialogflow che eseguono chiamate di sola lettura specifiche di Dialogflow utilizzando l'API:
|
Consulta le definizioni dei ruoli IAM di Dialogflow. |
Controlla l'accesso con la console Google Cloud
Puoi controllare l'accesso con le impostazioni IAM. Consulta la guida rapida 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 .
Aggiungi un utente o un account di servizio al progetto
Puoi fornire autorizzazioni a utenti o service account concedendo loro ruoli nel tuo progetto Google Cloud . Gli utenti vengono aggiunti fornendo il loro indirizzo email. Anche i service account vengono aggiunti fornendo l'indirizzo email associato. Devi aggiungere membri del 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 Service account di IAM nella console Google Cloud .
Per aggiungere un membro:
- Fai clic sul pulsante Aggiungi nella parte superiore della pagina.
- Inserisci l'indirizzo email del membro.
- Seleziona un ruolo.
- Fai clic su Salva.
Cambia autorizzazioni
- Fai clic sul pulsante di modifica per il membro.
- Seleziona un altro ruolo.
- Fai clic su Salva.
Rimuovi un membro
- Fai clic sul pulsante Elimina per il membro.
Controlla l'accesso con la console Dialogflow
Le opzioni di condivisione si trovano nelle impostazioni dell'agente. Per aprire le impostazioni di condivisione dell'agente:
- Vai alla console di Dialogflow ES.
- Seleziona l'agente nella parte superiore del menu della barra laterale sinistra.
- Fai clic sul pulsante delle impostazioni accanto al nome dell'agente.
- Fai clic sulla scheda Condividi. Se non vedi la scheda Condividi, significa che non disponi del ruolo di amministratore dell'agente richiesto.
Aggiungi un utente
- Inserisci l'indirizzo email dell'utente in Invita nuove persone.
- Seleziona un ruolo.
- Fai clic su Aggiungi.
- Fai clic su Salva.
Cambia autorizzazioni
- Trova l'utente nell'elenco.
- Seleziona un altro ruolo.
- Fai clic su Salva.
Rimuovere un utente
Trova l'utente nell'elenco.
Fai clic sul pulsante Elimina per l'utente.
Fai clic su Salva.
Service account creati automaticamente
Quando crei e utilizzi l'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 le chiavi per nessuno di questi agenti di servizio, né devi utilizzarli per effettuare chiamate API dirette. Vengono utilizzati solo dal servizio Dialogflow per connettersi a una serie di servizi Google Cloud utilizzati dal tuo agente. Potresti dover fare riferimento a questi agenti di servizio via email quando configuri determinate funzionalità di Dialogflow.
La tabella seguente descrive alcuni di questi agenti di servizio:
| Modulo email IAM | Finalità |
|---|---|
| service-project-number @gcp-sa-dialogflow. |
Utilizzato per connettere l'agente ai servizi che gestiscono il traffico di integrazione. |
| firebase-adminsdk-alphanum @project-id. |
Utilizzato per connettere l'agente ai servizi che gestiscono il traffico dell'integrazione dell'Assistente Google. |
| project-id @ |
Utilizzato per connettere l'agente ai servizi che gestiscono il traffico dell'integrazione dell'Assistente Google. |
Trasferisci il ruolo di amministratore
Per trasferire il ruolo di amministratore di un agente, l'amministratore esistente deve seguire i passaggi riportati sopra 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ù presso la 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 dispone delle autorizzazioni per modificare l'amministratore dell'agente.
- Se disponi delle autorizzazioni in lettura per l'agente, puoi esportarlo e importarlo in un agente in cui il dipendente desiderato è amministratore. Ciò potrebbe causare tempi di inattività per un agente di produzione live durante la migrazione dell'agente e l'aggiornamento delle integrazioni.
OAuth
Se utilizzi le librerie client di Google per accedere a Dialogflow, non è necessario utilizzare direttamente OAuth, perché queste librerie gestiscono l'implementazione per te. Tuttavia, se implementi 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 Dialogflow)
Richieste che comportano 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 del chiamante. 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)