È comune che più membri di team collaborano 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à.
Puoi configurare l'accesso utilizzando la console di Dialogflow CX (consulta la documentazione, apri la console) o la console Google Cloud (consulta la documentazione, apri la console) con Identity and Access Management (IAM). La console Google Cloud viene utilizzata per concedere i ruoli IAM alle entità, mentre la console Dialogflow viene utilizzata per concedere i ruoli agente Dialogflow alle entità. I ruoli dell'agente Dialogflow sono comodi ruoli predefiniti definiti da Dialogflow che limitano l'accesso a un agente o alle risorse figlio di un agente specifico.
Esistono alcune situazioni in cui è necessario utilizzare la console Google Cloud:
- Il ruolo Proprietario progetto IAM è concesso per impostazione predefinita all'utente che ha creato il progetto proprietario dell'agente. Questo proprietario ha accesso completo a tutti gli agenti del progetto. Per cambiare il proprietario del progetto, devi usare la console Google Cloud.
- Solo l'accesso a livello di agente può essere configurato tramite la console di Dialogflow CX. Per configurare l'accesso a livello di progetto devi usare la console Google Cloud.
- Un sottoinsieme di ruoli IAM ha ruoli agente Dialogflow corrispondenti. Se vuoi concedere un ruolo a livello di progetto o di agente che non esiste nella console di Dialogflow CX, devi utilizzare la console Google Cloud.
- Se stai creando un agente datastore con l'interfaccia utente Vertex AI Conversation, devi utilizzare la console Google Cloud.
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.
Controllare l'accesso con la console di Dialogflow CX
La console di Dialogflow CX consente di applicare pratici ruoli di agente configurati per la condivisione a livello di agente. Questi ruoli sono correlati ai ruoli IAM con condizioni IAM che limitano l'accesso all'agente specifico o a un sottoinsieme di risorse figlio dell'agente.
Per accedere alla configurazione dei ruoli degli agente dalla console di Dialogflow CX, devi disporre del ruolo Amministratore IAM progetto per il progetto associato. Questo ruolo viene concesso dalla console Google Cloud.
Ruolo agente Dialogflow | Riepilogo | Ruolo IAM |
---|---|---|
Amministratore | Fornisce l'accesso completo per creare, aggiornare, eseguire query, rilevare l'intento ed eliminare l'agente dalla console o dall'API. | Dialogflow > Amministratore API Dialogflow |
Reader | Fornisce l'accesso in lettura per eseguire query (non rilevare l'intent) sull'agente dalla console o dall'API. | Dialogflow > Lettore API Dialogflow |
Client | Fornisce l'accesso per rilevare l'intent dalla console o dall'API. | Dialogflow > Client API Dialogflow |
Amministratore intent | Fornisce l'accesso per creare, aggiornare, eliminare o eseguire query sugli intent di un agente dalla console o dall'API. | Dialogflow > Amministratore intent Dialogflow |
Amministratore tipi di entità | Fornisce l'accesso per creare, aggiornare, eliminare o eseguire query sui tipi di entità di un agente dalla console o dall'API. | Dialogflow > Amministratore tipi di entità Dialogflow |
Amministratore webhook | Fornisce l'accesso per creare, aggiornare, eliminare o eseguire query sui webhook di un agente dalla console o dall'API. | Dialogflow > Amministratore webhook di Dialogflow |
Amministratore scenario di test | Fornisce l'accesso per creare, aggiornare, eliminare o eseguire query sugli scenari di test di un agente dalla console o dall'API. | Dialogflow > Amministratore scenari di test Dialogflow |
Editor flussi | Fornisce l'accesso per aggiornare, eseguire query su un flusso specifico e creare, aggiornare, eliminare o eseguire query sulle risorse del flusso (pagine, gruppi di route e versioni) dalla console o dall'API. | Dialogflow > Editor flussi Dialogflow |
Editor ambiente | Fornisce l'accesso per eseguire l'aggiornamento, eseguire query su un ambiente specifico e per creare, aggiornare, eliminare o eseguire query sulle risorse dell'ambiente (esperimenti) dalla console o dall'API. | Dialogflow > Editor ambiente Dialogflow |
Le opzioni di condivisione si trovano nelle impostazioni dell'agente. Per aprire le impostazioni di condivisione dell'agente:
- Apri la console Dialogflow CX.
- Scegli il tuo progetto Google Cloud.
- Seleziona l'agente.
- Fai clic su Impostazioni agente.
- Fai clic sulla scheda Condividi.
Aggiungi un'entità
- Fai clic su Aggiungi.
- Inserisci l'indirizzo email dell'utente, del gruppo o dell'account di servizio.
- Seleziona Utente, Gruppo o Account di servizio come tipo di email.
- Per impostazione predefinita, viene aggiunto il ruolo Lettore Dialogflow, necessario per consentire agli utenti di accedere alla console di Dialogflow CX.
- Fai clic su Aggiungi ruolo in Assegna ruoli.
- Seleziona un tipo di ruolo in Tipo.
- Per i ruoli Editor flusso ed Editor ambiente, seleziona flussi o ambienti specifici o mantieni l'opzione predefinita Tutti.
- (Facoltativo) Imposta la data di scadenza per il ruolo.
- Fai clic su Salva.
Modifica ruoli entità
- Fai clic sull'entità nell'elenco.
- Aggiorna i ruoli per questa entità nel popup.
- Fai clic su Salva.
Rimuovi un'entità
- Trova l'entità nell'elenco.
- Fai clic sul pulsante Elimina delete per l'entità.
- Fai clic su Ok.
Controllare 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 seguenti, apri la pagina IAM nella console Google Cloud.
Aggiungi un account utente o di servizio al progetto
Puoi concedere le autorizzazioni agli utenti o agli account di servizio assegnando loro i ruoli nel tuo progetto Google Cloud. Gli utenti vengono aggiunti fornendo il proprio indirizzo email. Vengono aggiunti anche gli account di servizio fornendo l'indirizzo email associato. Se vuoi usare un account di servizio per più progetti, devi aggiungere gli account di servizio. Per trovare l'indirizzo email associato al tuo account di servizio, consulta la pagina Account di servizio IAM nella console Google Cloud.
Per aggiungere un'entità:
- Fai clic sul pulsante Aggiungi nella parte superiore della pagina.
- Inserisci l'indirizzo email dell'entità.
- Seleziona un ruolo.
- Fai clic su Salva.
Cambia autorizzazioni
- Fai clic sul pulsante di modifica per l'entità.
- Seleziona un altro ruolo.
- Fai clic su Salva.
Rimuovi un'entità
- Fai clic sul pulsante Elimina per l'entità.
Aggiungi una condizione per limitare l'accesso a un solo agente
Quando aggiungi o modifichi un'entità, puoi creare una condizione IAM che limita l'accesso a un agente.
Ad esempio:
{
"expression": "resource.name.startsWith(\"projects/PROJECT_ID/locations/REGION_ID/agents/AGENT_ID\")",
"title": "For Dialogflow Agent AGENT_ID"
}
Questa condizione ti concede l'accesso di base a un agente specifico. Ad esempio, un account di servizio con questa condizione può chiamare l'API Dialogflow solo per accedere all'agente specificato nella condizione del progetto, ma non ad altri agenti del progetto.
Per aggiungere questa condizione a un ruolo concesso a un'entità:
- Seleziona un'entità.
- Fai clic sul pulsante di modifica per l'entità.
- Fai clic su Aggiungi condizione.
- Nel campo Titolo,
inserisci
For Dialogflow Agent AGENT_ID
e sostituisci AGENT_ID con il tuo ID agente. - Puoi aggiungere qualsiasi descrizione.
- Seleziona l'Editor condizioni per creare la condizione.
- Aggiungi l'espressione
resource.name.startsWith("projects/PROJECT_ID/locations/REGION_ID/agents/AGENT_ID")
, sostituendo AGENT_ID con l'ID agente e PROJECT_ID con l'ID progetto. - Fai clic su Salva.
Ruoli IAM
La seguente tabella elenca i ruoli IAM comuni pertinenti per Dialogflow CX. 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 alle sessioni: autorizzazione per chiamare i metodi per le risorse solo di runtime durante una conversazione, ad esempio rilevamento di intent, aggiornamento del contesto, aggiornamento delle entità di sessione o interazioni di conversazione di Agent Assist.
- Accesso in lettura: autorizzazione per leggere qualsiasi risorsa.
Ruolo IAM | Riepilogo autorizzazioni | Dettagli autorizzazione |
---|---|---|
Progetto > Proprietario |
Concedi la concessione ai proprietari del progetto che hanno bisogno dell'accesso completo a tutte le risorse di Google Cloud e Dialogflow:
|
Consulta le definizioni dei ruoli IAM di base. |
Progetto > Editor |
Concedi agli editor di progetto che hanno bisogno dell'accesso in modifica a tutte le risorse di Google Cloud e Dialogflow:
|
Consulta le definizioni dei ruoli IAM di base. |
Progetto > Visualizzatore |
Concedi ai visualizzatori del progetto che hanno bisogno dell'accesso in lettura a tutte le risorse di Google Cloud e Dialogflow:
|
Consulta le definizioni dei ruoli IAM di base. |
Progetto > Amministratore IAM |
Concedi agli amministratori IAM del progetto che devono accedere in modifica alla configurazione dei ruoli dell'agente Dialogflow. | Consulta le definizioni dei ruoli di Gestore delle risorse IAM. |
Progetto > Browser |
Concedi ai browser del progetto che richiedono l'accesso in lettura per sfogliare la gerarchia di un progetto, inclusi cartella, organizzazione e criterio IAM:
|
Consulta le definizioni dei ruoli del progetto IAM. |
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. |
Dialogflow > Client API Dialogflow |
Concedi ai client API Dialogflow
che eseguono il rilevamento delle chiamate di intent utilizzando l'API:
|
Consulta le definizioni dei ruoli IAM di Dialogflow. |
Dialogflow > Editor agente console Dialogflow |
Concedi agli editor della console Dialogflow CX che modificano gli agenti esistenti:
|
Consulta le definizioni dei ruoli IAM di Dialogflow. |
Dialogflow > Lettore API Dialogflow |
Concedi ai client API Dialogflow
che eseguono chiamate di sola lettura specifiche per Dialogflow
utilizzando l'API:
|
Consulta le definizioni dei ruoli IAM di Dialogflow. |
Amministratore di Discovery Engine | Concedi agli utenti che creano agenti del datastore con l'interfaccia utente degli agenti Vertex AI. | Vedi Altre definizioni dei ruoli. |
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. Se, però, implementi un tuo client, potrebbe essere necessario 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 riguardano l'accesso a Cloud Storage
Alcuni Dialogflow richiedono l'accesso agli oggetti in Cloud Storage per la lettura o la scrittura di dati. Quando chiami una di queste richieste, Dialogflow accede ai dati di Cloud Storage per conto del chiamante. Ciò significa che l'autenticazione delle richieste 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)