Zugriffssteuerung

Es ist üblich, dass mehrere Teammitglieder an der Erstellung eines Agents zusammenarbeiten und Dienste auf den Agent zugreifen. Mit Rollen können Sie den Zugriff und die Berechtigungen von Hauptkonten steuern.

Sie können den Zugriff mit der Dialogflow CX-Konsole (Dokumentation ansehen, Konsole öffnen) oder in der Google Cloud Console (Dokumentation ansehen, Konsole öffnen) mit Identity and Access Management (IAM) konfigurieren. Über die Google Cloud Console werden Hauptkonten IAM-Rollen zugewiesen. Über die Dialogflow-Konsole können Hauptkonten Dialogflow-Agent-Rollen zugewiesen werden. Dialogflow-Agent-Rollen sind praktische vordefinierte Rollen, die von Dialogflow definiert werden und den Zugriff auf einen Agent oder die untergeordneten Ressourcen eines bestimmten Agents einschränken.

In einigen Situationen müssen Sie die Google Cloud Console verwenden:

  • Die IAM-Projektinhaberrolle wird standardmäßig dem Nutzer zugewiesen, der das Projekt erstellt hat, dem der Agent gehört. Dieser Inhaber hat uneingeschränkten Zugriff auf alle Agents im Projekt. Wenn Sie den Projektinhaber ändern möchten, müssen Sie die Google Cloud Console verwenden.
  • Der Zugriff auf Agent-Ebene kann nur über die Dialogflow CX-Konsole konfiguriert werden. Wenn Sie den Zugriff auf Projektebene konfigurieren möchten, müssen Sie die Google Cloud Console verwenden.
  • Eine Teilmenge von IAM-Rollen verfügt über entsprechende Dialogflow-Agent-Rollen. Wenn Sie eine Rolle auf Projekt- oder Agent-Ebene zuweisen möchten, die in der Dialogflow CX-Konsole nicht vorhanden ist, müssen Sie die Google Cloud Console verwenden.
  • Wenn Sie einen Datenspeicher-Agent mit der Vertex AI Conversation-Benutzeroberfläche erstellen, müssen Sie die Google Cloud Console verwenden.

Wenn Sie die API verwenden, werden an einen Agent möglicherweise auch Anfragen von einer oder mehreren Anwendungen gesendet. In diesem Fall können Sie den Zugriff mithilfe von Dienstkonten steuern.

Zugriff mit der Dialogflow CX-Konsole steuern

Mit der Dialogflow CX-Konsole können Sie einfache Agent-Rollen anwenden, die für die Freigabe auf Agent-Ebene konfiguriert sind. Diese Rollen beziehen sich auf IAM-Rollen mit IAM-Bedingungen, die den Zugriff auf den jeweiligen Agent oder eine Teilmenge von untergeordneten Ressourcen des Agents einschränken.

Für den Zugriff auf die Konfiguration von Agent-Rollen über die Dialogflow CX-Konsole benötigen Sie die Rolle "Projekt-IAM-Administrator" für das zugehörige Projekt. Diese Rolle wird über die Google Cloud Console gewährt.

Dialogflow-Agent-Rolle Fazit IAM-Rolle
Admin Ermöglicht vollständigen Zugriff zum Erstellen, Aktualisieren, Abfragen, Erkennen von Intents und Löschen des Agents über die Console oder die API Dialogflow > Dialogflow API Admin
Leser Lesezugriff auf die Abfrage (Intent nicht erkennen) über die Console oder die API Dialogflow > Dialogflow API Reader
Client Zugriff zur Intent-Erkennung über die Console oder die API. Dialogflow > Dialogflow API Client
Intent-Administrator Bietet Zugriff zum Erstellen, Aktualisieren, Löschen oder Abfragen der Intents eines Agents über die Console oder die API. Dialogflow > Dialogflow Intent-Administrator
Administrator für Entitätstypen Bietet Zugriff zum Erstellen, Aktualisieren, Löschen oder Abfragen der Entitätstypen eines Agents über die Console oder die API. Dialogflow > Administrator von Dialogflow-Entitätstypen
Webhook-Administrator Bietet Zugriff zum Erstellen, Aktualisieren, Löschen oder Abfragen der Webhooks eines Agents über die Console oder die API. Dialogflow > Dialogflow-Webhook-Administrator
Testfalladministrator Berechtigung zum Erstellen, Aktualisieren, Löschen oder Abfragen der Testfälle eines Agents über die Console oder die API. Dialogflow > Dialogflow-Testfalladministrator
Ablaufeditor Ermöglicht Zugriff auf das Aktualisieren, Abfragen eines bestimmten Ablaufs und Erstellen, Aktualisieren, Löschen oder Abfragen der Ablaufressourcen (Seiten, Routengruppen und -versionen) über die Console oder die API. Dialogflow > Dialogflow-Ablaufeditor
Umgebungseditor Berechtigung zum Aktualisieren, Abfragen einer bestimmten Umgebung und zum Erstellen, Aktualisieren, Löschen oder Abfragen der Umgebungsressourcen (Tests) über die Console oder die API. Dialogflow > Bearbeiter der Dialogflow-Umgebung

Die Freigabeoptionen finden Sie in den Einstellungen des Agents. So öffnen Sie die Freigabeeinstellungen des Agents:

  1. Öffnen Sie die Dialogflow CX Console.
  2. Wählen Sie Ihr Google Cloud-Projekt aus.
  3. Wählen Sie den Agent aus.
  4. Klicken Sie auf Agent-Einstellungen.
  5. Klicken Sie auf den Tab Share (Freigeben).

Hauptkonto hinzufügen

  1. Klicken Sie auf Hinzufügen.
  2. Geben Sie die E-Mail-Adresse des Nutzers, der Gruppe oder des Dienstkontos ein.
  3. Wählen Sie als E-Mail-Typ Nutzer, Gruppe oder Dienstkonto aus.
  4. Die Rolle Dialogflow-Leser wird standardmäßig hinzugefügt. Diese ist erforderlich, damit die Nutzer auf die Dialogflow CX-Konsole zugreifen können.
  5. Klicken Sie unter Rollen zuweisen auf Rolle hinzufügen.
  6. Wählen Sie unter Typ einen Rollentyp aus.
  7. Wählen Sie für die Rollen Ablaufeditor und Umgebungseditor bestimmte Abläufe oder Umgebungen aus oder behalten Sie die Standardoption Alle bei.
  8. Legen Sie optional das Ablaufdatum für die Rolle fest.
  9. Klicken Sie auf Speichern.

Hauptkontorollen ändern

  1. Klicken Sie in der Liste auf das Hauptkonto.
  2. Aktualisieren Sie die Rollen für dieses Hauptkonto im Pop-up-Fenster.
  3. Klicken Sie auf Speichern.

Hauptkonto entfernen

  1. Suchen Sie in der Liste nach dem Hauptkonto.
  2. Klicken Sie auf die Schaltfläche zum Löschen des jeweiligen Hauptkontos.
  3. Klicken Sie auf OK.

Zugriff mit der Google Cloud Console steuern

Sie können den Zugriff über die IAM-Einstellungen steuern. Ausführliche Informationen zum Hinzufügen, Bearbeiten und Entfernen von Berechtigungen finden Sie in der Kurzanleitung für IAM.

Öffnen Sie in der Google Cloud Console die Seite IAM, um auf die folgenden Einstellungen zuzugreifen.

Nutzer oder Dienstkonto zum Projekt hinzufügen

Sie können Nutzern oder Dienstkonten Berechtigungen gewähren, indem Sie ihnen Rollen für Ihr Google Cloud-Projekt zuweisen. Nutzer werden durch Angabe ihrer E-Mail-Adresse hinzugefügt. Auch Dienstkonten können durch die Angabe der zugehörigen E-Mail-Adresse hinzugefügt werden. Das Hinzufügen von Dienstkonten ist erforderlich, wenn Sie ein Dienstkonto für mehrere Projekte verwenden möchten. Die mit Ihrem Dienstkonto verknüpfte E-Mail-Adresse finden Sie in der Google Cloud Console auf der IAM-Seite Dienstkonten.

So fügen Sie ein Hauptkonto hinzu:

  1. Klicken Sie oben auf der Seite auf die Schaltfläche zum Hinzufügen eines Mitglieds.
  2. Geben Sie die E-Mail-Adresse Ihres Hauptkontos ein.
  3. Wählen Sie eine Rolle aus.
  4. Klicken Sie auf Speichern.

Berechtigungen ändern

  1. Klicken Sie auf die Schaltfläche zum Bearbeiten des jeweiligen Hauptkontos.
  2. Wählen Sie eine andere Rolle aus.
  3. Klicken Sie auf Speichern.

Hauptkonto entfernen

  1. Klicken Sie auf die Schaltfläche zum Löschen des jeweiligen Hauptkontos.

Bedingung hinzufügen, um den Zugriff auf einen Agent einzuschränken

Wenn Sie ein Hauptkonto hinzufügen oder bearbeiten, können Sie eine IAM-Bedingung erstellen, die den Zugriff auf einen Agent einschränkt.

Beispiel:

{
    "expression": "resource.name.startsWith(\"projects/PROJECT_ID/locations/REGION_ID/agents/AGENT_ID\")",
    "title": "For Dialogflow Agent AGENT_ID"
}

Mit dieser Bedingung erhalten Sie grundlegenden Zugriff auf einen bestimmten Agent. Zum Beispiel kann ein Dienstkonto mit dieser Bedingung nur die Dialogflow API aufrufen, um auf den Agent zuzugreifen, der in der Bedingung für das Projekt angegeben ist, jedoch nicht für andere Agents im Projekt.

So fügen Sie diese Bedingung einer Rolle hinzu, die einem Hauptkonto zugewiesen ist:

  1. Wählen Sie ein Hauptkonto aus.
  2. Klicken Sie auf die Schaltfläche zum Bearbeiten des jeweiligen Hauptkontos.
  3. Klicken Sie auf Bedingung hinzufügen.
  4. Geben Sie im Feld Titel For Dialogflow Agent AGENT_ID ein und ersetzen Sie "AGENT_ID" durch Ihre Agent-ID.
  5. Sie können auch eine beliebige Beschreibung hinzufügen.
  6. Wählen Sie den Bedingungseditor aus, um die Bedingung zu erstellen.
  7. Fügen Sie den Ausdruck resource.name.startsWith("projects/PROJECT_ID/locations/REGION_ID/agents/AGENT_ID") hinzu und ersetzen Sie AGENT_ID durch Ihre Agent-ID und PROJECT_ID durch Ihre Projekt-ID.
  8. Klicken Sie auf Speichern.

IAM-Rollen

In der folgenden Tabelle sind gängige IAM-Rollen aufgeführt, die für Dialogflow CX relevant sind. In der Zusammenfassung der Berechtigungen in der Tabelle werden die folgenden Begriffe verwendet:

  • Uneingeschränkter Zugriff: Berechtigung zum Ändern des Zugriffs sowie zum Erstellen, Löschen, Bearbeiten und Lesen von Ressourcen.
  • Bearbeitungszugriff: Berechtigung zum Erstellen, Löschen, Bearbeiten und Lesen von Ressourcen.
  • Sitzungszugriff: Berechtigung zum Aufrufen von Methoden für reine Laufzeitressourcen während einer Unterhaltung, z. B. Erkennen des Intents, Aktualisieren des Kontexts, Aktualisieren von Sitzungsentitäten oder Agent Assist-Unterhaltungsinteraktionen.
  • Lesezugriff: Berechtigung zum Lesen einer Ressource.
IAM-Rolle Zusammenfassung der Berechtigungen Berechtigungsdetails
Projekt >
Inhaber
Für Projektinhaber, die uneingeschränkten Zugriff auf alle Google Cloud- und Dialogflow-Ressourcen benötigen:
  • Vollständiger Zugriff auf alle Google Cloud-Projektressourcen über die Google Cloud Console oder APIs.
  • Uneingeschränkter Zugriff auf Agents über die Dialogflow-Konsole
  • Intent-Erkennung mithilfe der API
Siehe Definitionen grundlegender IAM-Rollen.
Projekt >
Editor
Für Projektbearbeiter, die Bearbeitungszugriff auf alle Google Cloud- und Dialogflow-Ressourcen benötigen:
  • Bearbeitungszugriff auf alle Google Cloud-Projektressourcen über die Google Cloud Console oder APIs.
  • Bearbeitungszugriff auf Agents über die Dialogflow-Konsole
  • Intent-Erkennung mithilfe der API
Siehe Definitionen grundlegender IAM-Rollen.
Projekt >
Betrachter
Für Projektbetrachter, die Lesezugriff auf alle Google Cloud- und Dialogflow-Ressourcen benötigen:
  • Lesezugriff auf alle Google Cloud-Projektressourcen über die Google Cloud Console oder APIs.
  • Lesezugriff auf Agents über die Dialogflow-Konsole oder API, kann den Simulator nicht verwenden.
  • Keine Intent-Erkennung mithilfe der API
Siehe Definitionen grundlegender IAM-Rollen.
Projekt >
IAM-Administrator
Für Projekt-IAM-Administratoren, die Bearbeitungszugriff auf die Konfiguration von Dialogflow-Agent-Rollen benötigen. Siehe Definitionen von IAM-Ressourcenmanager-Rollen.
Projekt >
Browser
Für Projektbrowser, die Lesezugriff zum Durchsuchen der Hierarchie nach einem Projekt benötigen, einschließlich Ordner, Organisation und IAM-Richtlinie:
  • Lesezugriff auf die Google Cloud-Projekthierarchie.
  • Kein Zugriff auf Agents über die Dialogflow-Konsole
  • Keine Intent-Erkennung mithilfe der API
Siehe Definitionen von IAM-Projektrollen.
Dialogflow >
Dialogflow API-Administrator
Für Dialogflow API-Administratoren, die uneingeschränkten Zugriff auf Dialogflow-spezifische Ressourcen benötigen:
  • Vollständiger Zugriff auf alle Dialogflow-Ressourcen über die Google Cloud Console oder APIs.
  • Uneingeschränkter Zugriff auf Agents über die Dialogflow-Konsole
  • Intent-Erkennung mithilfe der API
Siehe Definitionen von Dialogflow-IAM-Rollen.
Dialogflow >
Dialogflow API-Client
Für Dialogflow API-Clients, die über die API Aufrufe zur Intent-Erkennung durchführen:
  • Sitzungszugriff auf Dialogflow-Laufzeitressourcen mit dem Dialogflow-Simulator oder der API.
  • Eingeschränkter Zugriff auf Agents über die Dialogflow-Konsole.
  • Intent-Erkennung mithilfe der API
Siehe Definitionen von Dialogflow-IAM-Rollen.
Dialogflow >
Agent-Bearbeiter in Dialogflow-Konsole
Für Bearbeiter der Dialogflow CX-Konsole, die vorhandene Agents bearbeiten:
  • Vollständiger Zugriff auf alle Dialogflow-Ressourcen über die Google Cloud Console.
  • Bearbeitungszugriff auf die meisten Agent-Daten über die Dialogflow-Konsole
  • Intent-Erkennung mithilfe der API
Siehe Definitionen von Dialogflow-IAM-Rollen.
Dialogflow >
Dialogflow API-Leser
Für Dialogflow API-Clients, die Dialogflow-spezifische schreibgeschützte Aufrufe über die API ausführen:
  • Lesezugriff auf alle Dialogflow-Ressourcen über die Google Cloud Console oder die APIs.
  • Lesezugriff auf Agents über die Dialogflow-Konsole, kann den Simulator nicht verwenden.
  • Keine Intent-Erkennung mithilfe der API
Siehe Definitionen von Dialogflow-IAM-Rollen.
Discovery Engine-Administrator Für Nutzer, die Datenspeicher-Agents mit der Vertex AI Conversation-Benutzeroberfläche erstellen. Siehe Andere Rollendefinitionen.

OAuth

Wenn Sie Google-Clientbibliotheken für den Zugriff auf Dialogflow verwenden, müssen Sie OAuth nicht direkt verwenden, da diese Bibliotheken die Implementierung für Sie übernehmen. Wenn Sie jedoch Ihren eigenen Client implementieren, müssen Sie möglicherweise einen eigenen OAuth-Ablauf implementieren. Für den Zugriff auf die Dialogflow API ist einer der folgenden OAuth-Bereiche erforderlich:

  • https://www.googleapis.com/auth/cloud-platform (Zugriff auf alle Projektressourcen)
  • https://www.googleapis.com/auth/dialogflow (Zugriff auf Dialogflow-Ressourcen)

Anfragen mit Cloud Storage-Zugriff

Einige Dialogflow-Anfragen fordern Zugriff auf Objekte in Cloud Storage zum Lesen oder Schreiben von Daten an. Wenn Sie eine dieser Anfragen aufrufen, greift Dialogflow im Namen des Aufrufers auf die Cloud Storage-Daten zu. Das bedeutet, dass die Authentifizierung der Anfrage Berechtigungen für den Zugriff auf Dialogflow und die Cloud Storage-Objekte haben muss.

Wenn Sie eine Google-Clientbibliothek und IAM-Rollen verwenden, finden Sie in der Anleitung zur Cloud Storage-Zugriffssteuerung Informationen zu Cloud Storage-Rollen.

Wenn Sie Ihren eigenen Client implementieren und OAuth verwenden, müssen Sie den folgenden OAuth-Bereich verwenden:

  • https://www.googleapis.com/auth/cloud-platform (Zugriff auf alle Projektressourcen)