È 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 alle entità.
Se utilizzi l'API, potresti avere anche 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 di Dialogflow.
La console di Dialogflow fornisce il ruolo di amministratore dell'agente all'utente che ha creato l'agente. Questo utente ottiene automaticamente il ruolo di Project Owner IAM nel progetto associato all'agente.
Gli amministratori degli agenti possono aggiungere sviluppatori e revisori all'agente nella console di Dialogflow. Quando il ruolo di sviluppatore o revisore viene concesso nella console di Dialogflow, l'utente ottiene rispettivamente il ruolo di editor del progetto IAM o di visualizzatore del progetto IAM. Un modo alternativo per aggiungere sviluppatori e revisori all'agente è concedere agli utenti i ruoli di editor del progetto IAM o di visualizzatore del progetto IAM corrispondenti in the Google Cloud console.
In alcune situazioni devi utilizzare la Google Cloud console:
- Se vuoi modificare l'amministratore, aggiungere più amministratori per un agente, o rimuovere gli amministratori di un agente, devi utilizzare la Google Cloud console.
- Se hai integrazioni con altre Google Cloud risorse, 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 Lettore) nella Google Cloud console per IAM.
- Un sottoinsieme di ruoli IAM ha ruoli corrispondenti nella console di Dialogflow. Se vuoi concedere un ruolo che non esiste nella console di Dialogflow, devi utilizzare la Google Cloud console.
Ruoli
La tabella seguente elenca i ruoli comuni pertinenti a Dialogflow, la correlazione tra i ruoli della console di 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 a creare, eliminare, modificare e leggere qualsiasi risorsa.
- Accesso alla sessione: autorizzazione a chiamare i metodi per le risorse di sola esecuzione durante una conversazione, ad esempio rilevare l'intent, aggiornare il contesto, aggiornare le entità sessione o le interazioni di conversazione di Assistente agente. Questo accesso fornisce un sottoinsieme di autorizzazioni disponibili nell'accesso completo e in 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 Project Owner
che hanno bisogno dell'accesso completo a tutte le risorse e a Dialogflow:
|
Consulta le definizioni dei ruoli di base IAM. |
| Sviluppatore | Progetto > Editor |
Concedi agli editor del progetto
che hanno bisogno dell'accesso in modifica a tutte le risorse e a Dialogflow:
|
Consulta le definizioni dei ruoli di base IAM. |
| Revisore | Progetto > Visualizzatore |
Concedi ai visualizzatori del progetto
che hanno bisogno dell'accesso in lettura a tutte le risorse e a Dialogflow:
|
Consulta le definizioni dei ruoli di base IAM. |
| N/D | Progetto > Browser |
Concedi ai browser del progetto
che hanno bisogno dell'accesso in lettura per esplorare la gerarchia di un progetto,
inclusi cartella, organizzazione e policy IAM:
|
Consulta le definizioni dei ruoli del progetto IAM . |
| N/D | Dialogflow > Amministratore API Dialogflow |
Concedi agli amministratori dell'API Dialogflow
che hanno bisogno dell'accesso completo alle risorse specifiche di Dialogflow:
|
Consulta le definizioni dei ruoli IAM di Dialogflow. |
| N/D | Dialogflow > Client API Dialogflow |
Concedi ai client dell'API Dialogflow
che eseguono chiamate detect intent 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:
|
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:
|
Consulta le definizioni dei ruoli IAM di Dialogflow. |
Controllare l'accesso con la Google Cloud console
Puoi controllare l'accesso con le impostazioni IAM. Per istruzioni dettagliate su come aggiungere, modificare e rimuovere le autorizzazioni, consulta la guida rapida di IAM.
Per accedere alle impostazioni riportate di seguito, apri la pagina IAM nella Google Cloud console.
Aggiungere un utente o un account di servizio al progetto
Puoi fornire autorizzazioni a utenti o service account concedendo loro ruoli nel tuo Google Cloud progetto. 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 IAM nella Google Cloud console.
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.
Cambiare autorizzazioni
- Fai clic sul pulsante Modifica per il membro.
- Seleziona un ruolo diverso.
- Fai clic su Salva.
Rimuovere un membro
- Fai clic sul pulsante Elimina 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:
- Vai alla console di Dialogflow ES.
- Seleziona l'agente nella parte superiore del menu della barra laterale sinistra.
- Fai clic sul pulsante 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.
Aggiungere un utente
- Inserisci l'indirizzo email dell'utente in Invita nuove persone.
- Seleziona un ruolo.
- Fai clic su Aggiungi.
- Fai clic su Salva.
Cambiare autorizzazioni
- Trova l'utente nell'elenco.
- Seleziona un ruolo diverso.
- 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 di 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 Google Cloud servizi utilizzati dall'agente. Potresti dover fare riferimento a questi agenti di servizio tramite 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.iam.gserviceaccount.com |
Utilizzato per connettere l'agente ai servizi che gestiscono il traffico di integrazione. |
| firebase-adminsdk-alphanum @project-id.iam.gserviceaccount.com |
Utilizzato per connettere l'agente ai servizi che gestiscono il traffico di integrazione di Assistente Google. |
| project-id @appspot.gserviceaccount.com |
Utilizzato per connettere l'agente ai servizi che gestiscono il traffico di integrazione di 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. Questa operazione potrebbe causare tempi di inattività per un agente di produzione live durante la migrazione dell'agente e l'aggiornamento di eventuali integrazioni.
OAuth
Se utilizzi le librerie client Google per accedere a Dialogflow, non devi utilizzare OAuth direttamente, 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 di 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 Google e i ruoli IAM, consulta la guida al controllo dell'accesso a 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)