È 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:
- Apri la console Dialogflow CX.
- Scegli il tuo progetto Google Cloud.
- Seleziona il tuo agente.
- Fai clic su Impostazioni agente.
- Fai clic sulla scheda Condividi.
Aggiungere un'entità
- Fai clic su Aggiungi.
- Inserisci l'indirizzo email dell'utente, del gruppo o del account di servizio.
- Seleziona Utente, Gruppo o Service Account per il tipo di email.
- Il ruolo Lettore Dialogflow viene aggiunto per impostazione predefinita ed è necessario per consentire agli utenti di accedere alla console Agenti conversazionali.
- Fai clic su Aggiungi ruolo in Assegna ruoli.
- Seleziona un tipo di ruolo in Tipo.
- Per i ruoli Editor di flussi ed Editor di ambienti, seleziona flussi o ambienti specifici oppure mantieni l'opzione predefinita Tutti.
- (Facoltativo) Imposta la data di scadenza del ruolo.
- Fai clic su Salva.
Modificare i ruoli del principal
- Fai clic sul soggetto giuridico nell'elenco.
- Aggiorna i ruoli per questa entità nel popup.
- Fai clic su Salva.
Rimuovere un'entità
- Trova l'entità nell'elenco.
- Fai clic sul pulsante Elimina delete per l'entità.
- 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à:
- 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.
Rimuovere un'entità
- 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à:
- Seleziona un'entità.
- Fai clic sul pulsante di modifica per l'entità.
- Fai clic su Aggiungi condizione.
- Nel campo Titolo,
inserisci
For Dialogflow CX Agent AGENT_IDe sostituisci AGENT_ID con il tuo ID agente. - Puoi aggiungere qualsiasi descrizione.
- Seleziona l'editor delle condizioni per creare la tua 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 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:
|
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:
|
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:
|
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:
|
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:
|
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:
|
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:
|
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:
|
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.