Controllo dell'accesso

È 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 ai principal.

Puoi configurare l'accesso utilizzando la console Agenti conversazionali o 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 Conversational Agents viene utilizzata per concedere ruoli agente Dialogflow CX alle entità. I ruoli dell'agente Dialogflow CX sono comodi ruoli predefiniti definiti da Dialogflow CX che limitano l'accesso a un agente o alle risorse secondarie di un agente specifico.

Esistono alcune situazioni in cui 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 del progetto. Se vuoi cambiare il proprietario del progetto, devi utilizzare la console Google Cloud .
  • Solo l'accesso a livello di agente può essere configurato tramite la console Dialogflow CX. Se vuoi configurare l'accesso a livello di progetto, devi utilizzare la console Google Cloud .
  • Un sottoinsieme di ruoli IAM ha ruoli agente Dialogflow CX 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 datastore con l'interfaccia utente di Vertex AI Conversation, devi utilizzare la console Google Cloud .

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.

Controllare l'accesso con la console Conversational Agents

La console Conversational Agents ti consente di applicare ruoli dell'agente convenienti 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 secondarie dell'agente.

Per accedere alla configurazione dei ruoli dell'agente dalla console Agenti conversazionali, devi disporre del ruolo Amministratore IAM progetto per il progetto associato. Questo ruolo viene concesso dalla console Google Cloud .

Ruolo dell'agente Dialogflow CX Riepilogo Ruolo IAM
Lettore conversazionale Fornisce l'accesso in lettura per eseguire query (non rilevare l'intent) dell'agente dalla console o dall'API. Dialogflow > Lettore API Dialogflow
Amministratore conversazionale Fornisce l'accesso completo per creare, aggiornare, eseguire query, rilevare l'intent ed eliminare l'agente dalla console o dall'API. Dialogflow > Amministratore API Dialogflow
Conversational Client Fornisce l'accesso per rilevare l'intent dalla console o dall'API. Dialogflow > Dialogflow API Client
Service agent Consulta Service Agents. Consulta Service Agents.
Editor di 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 di flussi Dialogflow
Editor di ambiente Fornisce l'accesso per aggiornare, eseguire query su un ambiente specifico e creare, aggiornare, eliminare o eseguire query sulle risorse dell'ambiente (esperimenti) dalla console o dall'API. Dialogflow > Editor ambiente Dialogflow
Entity Type Admin Fornisce l'accesso per creare, aggiornare, eliminare o interrogare i tipi di entità di un agente dalla console o dall'API. Dialogflow > Dialogflow Entity Type Admin
Intent Admin Fornisce l'accesso per creare, aggiornare, eliminare o interrogare gli intent di un agente dalla console o dall'API. Dialogflow > Dialogflow Intent Admin
Test Case Admin Fornisce l'accesso per creare, aggiornare, eliminare o interrogare gli scenari di test di un agente dalla console o dall'API. Dialogflow > Dialogflow Test Case Admin
Webhook Admin Fornisce l'accesso per creare, aggiornare, eliminare o interrogare i webhook di un agente dalla console o dall'API. Dialogflow > Dialogflow Webhook Admin

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 tuo progetto Google Cloud.
  3. Seleziona il tuo agente.
  4. Fai clic su Impostazioni agente.
  5. Fai clic sulla scheda Condividi.

Aggiungere un'entità

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

Modificare i ruoli del principal

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

Rimuovere 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. 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 le autorizzazioni a utenti o service account concedendo loro ruoli nel tuo progetto Google Cloud . Gli utenti vengono aggiunti fornendo il loro indirizzo email. Anche gli account di servizio vengono aggiunti fornendo l'indirizzo email associato. Devi aggiungere service account quando vuoi utilizzare un account di servizio per più progetti. Per trovare l'indirizzo email associato al tuo account di servizio, consulta la pagina Service Accounts di 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.

Rimuovere un'entità

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

Aggiungere una condizione per limitare l'accesso a un agente

Quando aggiungi o modifichi un principal, 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 CX Agent AGENT_ID"
}

Questa condizione ti consente di accedere di base a un agente specifico. Ad esempio, un account di servizio con questa condizione può chiamare solo l'API Dialogflow CX per accedere all'agente specificato nella condizione per il progetto, ma non ad 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 CX Agent AGENT_ID e sostituisci AGENT_ID con il tuo ID agente.
  5. Puoi aggiungere qualsiasi descrizione.
  6. Seleziona l'editor delle condizioni per creare la tua condizione.
  7. 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.
  8. Fai clic su Salva.

Ruoli IAM

La tabella seguente elenca i ruoli IAM comuni pertinenti a 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 runtime durante una conversazione, ad esempio rilevamento dell'intent, aggiornamento del contesto, aggiornamento delle entità sessione o interazioni di conversazione di Agent Assist.
  • Accesso in lettura: Autorizzazione per leggere qualsiasi risorsa.
Ruolo IAM Riepilogo delle autorizzazioni Dettagli autorizzazione
Progetto >
Proprietario
Concede ai proprietari del progetto che hanno bisogno dell'accesso completo a tutte le risorse Google Cloud e Dialogflow CX:
  • Accesso completo a tutte le risorse del progetto utilizzando la console o le API. Google Cloud Google Cloud
  • Accesso completo agli agenti utilizzando la console Conversational Agents.
  • Può rilevare l'intent utilizzando l'API.
Consulta le definizioni dei ruoli di base di IAM.
Progetto >
Editor
Concedi agli editor di progetto che hanno bisogno dell'accesso in modifica a tutte le risorse Google Cloud e Dialogflow CX:
  • Accesso in modifica a tutte le risorse del progetto utilizzando la console o le API. Google Cloud Google Cloud
  • Modifica l'accesso agli agenti utilizzando la console Conversational Agents.
  • Può rilevare l'intent utilizzando l'API.
Consulta le definizioni dei ruoli di base di IAM.
Progetto > Visualizzatore
Concedi ai visualizzatori del progetto che hanno bisogno dell'accesso in lettura a tutte le risorse Google Cloud e Dialogflow CX:
  • Accesso in lettura a tutte le risorse del progetto utilizzando la console o le API. Google Cloud Google Cloud
  • L'accesso in lettura agli agenti che utilizzano la console o l'API Conversational Agents non può utilizzare il simulatore.
  • Impossibile rilevare l'intent utilizzando l'API.
Consulta le definizioni dei ruoli di base di IAM.
Progetto >
Amministratore IAM
Concedi agli amministratori IAM del progetto che necessitano dell'accesso in modifica alla configurazione dei ruoli dell'agente Dialogflow CX. Consulta Definizioni dei ruoli di Resource Manager IAM.
Progetto >
Browser
Concedi ai browser del progetto che necessitano dell'accesso in lettura per esplorare la gerarchia di un progetto, inclusi cartella, organizzazione e criterio IAM:
  • Accesso in lettura alla Google Cloud gerarchia del progetto.
  • Nessun accesso agli agenti tramite la console Conversational Agents.
  • Impossibile rilevare l'intent utilizzando l'API.
Consulta le definizioni dei ruoli di progetto IAM.
Dialogflow >
Amministratore API Dialogflow
Concedi agli amministratori dell'API Dialogflow CX che hanno bisogno dell'accesso completo alle risorse specifiche di Dialogflow CX:
  • Accesso completo a tutte le risorse Dialogflow CX utilizzando la console o le API. Google Cloud
  • Accesso completo agli agenti utilizzando la console Conversational Agents.
  • Può rilevare l'intent utilizzando l'API.
Consulta Definizioni dei ruoli IAM di Dialogflow.
Dialogflow >
Client API Dialogflow
Concedi ai client API Dialogflow CX che eseguono chiamate di rilevamento dell'intent utilizzando l'API:
  • Accesso alla sessione alle risorse di runtime di Dialogflow CX utilizzando il simulatore o l'API Dialogflow CX.
  • Accesso limitato agli agenti utilizzando la console Conversational Agents.
  • Può rilevare l'intent utilizzando l'API.
Consulta Definizioni dei ruoli IAM di Dialogflow.
Dialogflow >
Editor agente console Conversational Agents
Concedi agli editor della console Conversational Agents che modificano gli agenti esistenti:
  • Accesso completo a tutte le risorse Dialogflow CX utilizzando la Google Cloud console.
  • Modifica l'accesso alla maggior parte dei dati dell'agente utilizzando la console Conversational Agents.
  • Può rilevare l'intent utilizzando l'API.
Consulta Definizioni dei ruoli IAM di Dialogflow.
Dialogflow >
Lettore API Dialogflow
Concedi ai client API Dialogflow che eseguono chiamate di sola lettura specifiche di Dialogflow CX utilizzando l'API:
  • Accesso in lettura a tutte le risorse Dialogflow CX utilizzando la console o le API. Google Cloud
  • L'accesso in lettura agli agenti tramite la console Conversational Agents non può utilizzare il simulatore.
  • Impossibile rilevare l'intent utilizzando l'API.
Consulta Definizioni dei ruoli IAM di Dialogflow.
Discovery Engine Admin Concedi agli utenti che creano agenti datastore con l'interfaccia utente di Vertex AI Agents. Consulta Altre definizioni di ruolo.

OAuth

Se utilizzi le librerie client Google per accedere a Dialogflow CX, non devi utilizzare OAuth direttamente, perché queste librerie gestiscono l'implementazione per te. Tuttavia, se stai implementando un client personalizzato, potresti dover implementare un flusso OAuth personalizzato. L'accesso all'API Dialogflow CX 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 CX)

Richieste che comportano l'accesso a Cloud Storage

Alcune richieste Dialogflow CX accedono agli oggetti in Cloud Storage per leggere o scrivere dati. Quando chiami una di queste richieste, Dialogflow CX 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 CX 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 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)

Ruoli personalizzati per l'accesso allo strumento Playbook

Puoi fornire controllo dell'accesso granulare per gli strumenti del playbook utilizzando autorizzazioni e ruoli personalizzati.

Puoi elencare le autorizzazioni disponibili visitando lo strumento di ricerca delle autorizzazioni e cercando dialogflow.tools.

Utilizzando queste autorizzazioni, puoi creare ruoli personalizzati.