Controllo dell'accesso

È comune per più membri del team collaborare 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 Dialogflow CX (visita la documentazione, apri la console) o utilizzando la console Google Cloud (visita la documentazione, apri la console) con Identity and Access Management (IAM). La console Google Cloud viene utilizzata per concedere ruoli IAM alle entità, mentre la console Dialogflow viene utilizzata per concedere ruoli agente Dialogflow alle entità. I ruoli agente Dialogflow sono comodi ruoli predefiniti definiti da Dialogflow che limitano l'accesso a un agente o alle risorse figlio di un agente specifico.

In alcune situazioni devi utilizzare la console Google Cloud:

  • Il ruolo Proprietario progetto IAM viene concesso per impostazione predefinita all'utente che ha creato il progetto proprietario dell'agente. Questo proprietario ha accesso completo a tutti gli agenti nel progetto. Se vuoi cambiare il proprietario del progetto, devi usare la console Google Cloud.
  • La console di Dialogflow CX può essere configurata solo per l'accesso a livello di agente. Per configurare l'accesso a livello di progetto, devi usare la console Google Cloud.
  • Un sottoinsieme di ruoli IAM ha ruoli di agente Dialogflow corrispondenti. Se vuoi concedere un ruolo a livello di progetto o di agente che non esiste nella console Dialogflow CX, devi utilizzare la console Google Cloud.
  • Se stai creando un agente del datastore con l'interfaccia utente di 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.

Controlla l'accesso con la console Dialogflow CX

La console Dialogflow CX consente di applicare pratici ruoli 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 di agente dalla console Dialogflow CX, devi disporre del ruolo Amministratore IAM progetto per il progetto associato. Questo ruolo viene concesso dalla console Google Cloud.

Ruolo di 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 alla query (senza rilevare l'intento) dell'agente dalla console o dall'API. Dialogflow > Lettore API Dialogflow
Client Fornisce l'accesso per rilevare l'intento 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 dei flussi Fornisce l'accesso per aggiornare, eseguire query su un flusso specifico e creare, aggiornare, eliminare o eseguire query sulle risorse di flusso (pagine, gruppi di route e versioni) dalla console o dall'API. Dialogflow > Editor flusso Dialogflow
Editor dell'ambiente Fornisce l'accesso per aggiornare, eseguire query su un ambiente specifico e creare, aggiornare, eliminare o eseguire query sulle risorse di 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:

  1. Apri la console Dialogflow CX.
  2. Scegli il progetto Google Cloud.
  3. Seleziona l'agente.
  4. Fai clic su Agent Settings (Impostazioni agente).
  5. Fai clic sulla scheda Condividi.

Aggiungi un'entità

  1. Fai clic su Aggiungi.
  2. Inserisci l'indirizzo email dell'account utente, gruppo o di servizio.
  3. Seleziona Utente, Gruppo o Account di servizio come tipo di email.
  4. Per impostazione predefinita, viene aggiunto il ruolo Lettore Dialogflow, che è necessario agli utenti per accedere alla console Dialogflow CX.
  5. Fai clic su Aggiungi ruolo nella sezione Assegna ruoli.
  6. Seleziona un tipo di ruolo in Tipo.
  7. Per i ruoli Editor flussi ed Editor ambiente, seleziona flussi o ambienti specifici oppure lascia l'opzione predefinita Tutti.
  8. (Facoltativo) Imposta la data di scadenza del ruolo.
  9. Fai clic su Salva.

Modifica ruoli dell'entità

  1. Fai clic sull'entità nell'elenco.
  2. Aggiorna i ruoli per questa entità nel popup.
  3. Fai clic su Salva.

Rimuovi un'entità

  1. Trova l'entità nell'elenco.
  2. Fai clic sul pulsante Elimina per l'entità.
  3. Fai clic su Ok.

Controlla l'accesso con la console Google Cloud

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 console Google Cloud.

Aggiungi un account utente o di servizio al progetto

Puoi fornire le autorizzazioni a utenti o account di servizio assegnando loro dei ruoli nel tuo progetto Google Cloud. Gli utenti vengono aggiunti fornendo il proprio indirizzo email. Vengono aggiunti anche gli account di servizio fornendo il relativo indirizzo email associato. Devi aggiungere account di servizio quando vuoi usarne uno per più progetti. 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à:

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

Cambia autorizzazioni

  1. Fai clic sul pulsante di modifica per l'entità.
  2. Seleziona un altro ruolo.
  3. Fai clic su Salva.

Rimuovi un'entità

  1. Fai clic sul pulsante Elimina per l'entità.

Aggiungi una condizione per limitare l'accesso a un agente

Quando aggiungi o modifichi un'entità, puoi creare una condizione IAM che limiti 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 fornisce 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 per il progetto, ma non per altri agenti nel progetto.

Per aggiungere questa condizione a un ruolo concesso a un'entità:

  1. Seleziona un'entità.
  2. Fai clic sul pulsante di modifica per l'entità.
  3. Fai clic su Aggiungi condizione.
  4. Nel campo Titolo, inserisci For Dialogflow Agent AGENT_ID e sostituisci AGENT_ID con il tuo ID agente.
  5. Puoi aggiungere una descrizione qualsiasi.
  6. Seleziona l'editor condizioni per creare la condizione.
  7. Aggiungi l'espressione resource.name.startsWith("projects/PROJECT_ID/locations/REGION_ID/agents/AGENT_ID"), sostituendo AGENT_ID con il tuo ID agente e PROJECT_ID con il tuo ID progetto.
  8. Fai clic su Salva.

Ruoli IAM

La tabella seguente 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 alla sessione: autorizzazione a chiamare metodi per risorse solo di runtime durante una conversazione, ad esempio rilevamento di intent, aggiornamento del contesto, aggiornamento di entità di sessione o interazioni di conversazione con Agent Assist.
  • Accesso in lettura: autorizzazione a leggere qualsiasi risorsa.
Ruolo IAM Riepilogo autorizzazioni Dettagli autorizzazione
Progetto >
Proprietario
Concedi ai proprietari del progetto che hanno bisogno dell'accesso completo a tutte le risorse Google Cloud e Dialogflow:
  • Accesso completo a tutte le risorse del progetto Google Cloud utilizzando la console Google Cloud o le API.
  • Accesso completo agli agenti utilizzando la console Dialogflow.
  • Può rilevare l'intento utilizzando l'API.
Consulta le definizioni dei ruoli di base IAM.
Progetto >
Editor
Concedi agli editor del progetto che hanno bisogno dell'accesso in modifica a tutte le risorse di Google Cloud e Dialogflow:
  • Accesso in modifica a tutte le risorse del progetto Google Cloud utilizzando la console Google Cloud o le API.
  • Accesso in modifica agli agenti utilizzando la console Dialogflow.
  • Può rilevare l'intento utilizzando l'API.
Consulta le definizioni dei ruoli di base IAM.
Progetto >
Visualizzatore
Concedi ai visualizzatori del progetto che hanno bisogno dell'accesso in lettura a tutte le risorse di Google Cloud e Dialogflow:
  • Accesso in lettura a tutte le risorse del progetto Google Cloud utilizzando la console Google Cloud o le API.
  • Accesso in lettura agli agenti che utilizzano la console o l'API Dialogflow; non è possibile utilizzare il simulatore.
  • Impossibile rilevare l'intento utilizzando l'API.
Consulta le definizioni dei ruoli di base IAM.
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 Resource Manager IAM.
Progetto >
Browser
Concedi ai browser del progetto che richiedono l'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'intento utilizzando l'API.
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:
  • Accesso completo a tutte le risorse Dialogflow utilizzando la console Google Cloud o le API.
  • Accesso completo agli agenti utilizzando la console Dialogflow.
  • Può rilevare l'intento utilizzando l'API.
Consulta Definizioni dei ruoli IAM Dialogflow.
Dialogflow >
Client API Dialogflow
Concedi ai client dell'API Dialogflow che eseguono chiamate di rilevamento di intent utilizzando l'API:
  • Accesso di sessione alle risorse Dialogflow di runtime utilizzando il simulatore o l'API Dialogflow.
  • Accesso limitato agli agenti che utilizzano la console Dialogflow.
  • Può rilevare l'intento utilizzando l'API.
Consulta Definizioni dei ruoli IAM Dialogflow.
Dialogflow >
Editor agente console Dialogflow
Concedi agli editor della console Dialogflow CX che modificano gli agenti esistenti:
  • Accesso completo a tutte le risorse Dialogflow utilizzando la console Google Cloud.
  • Accesso in modifica alla maggior parte dei dati degli agenti utilizzando la console Dialogflow.
  • Può rilevare l'intento utilizzando l'API.
Consulta Definizioni dei ruoli IAM Dialogflow.
Dialogflow >
Lettore API Dialogflow
Concedi ai client dell'API Dialogflow che eseguono chiamate di sola lettura specifiche per Dialogflow utilizzando l'API:
  • Accesso in lettura a tutte le risorse Dialogflow utilizzando la console Google Cloud o le API.
  • Accesso in lettura agli agenti tramite la console Dialogflow. Il simulatore non può essere utilizzato.
  • Impossibile rilevare l'intento utilizzando l'API.
Consulta Definizioni dei ruoli IAM Dialogflow.
Amministratore di Discovery Engine Concedi agli utenti che creano agenti del datastore con l'interfaccia utente di Vertex AI Agents. Consulta Altre definizioni dei ruoli.

OAuth

Se utilizzi librerie client di Google per accedere a Dialogflow, non è necessario utilizzare direttamente OAuth, perché queste librerie gestiscono l'implementazione al posto tuo. 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 Dialogflow)

Richieste che prevedono l'accesso a Cloud Storage

Alcune richieste di accesso a Dialogflow consentono di accedere 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.

Se 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)