Zugriffssteuerung

In der Regel arbeiten mehrere Teammitglieder zusammen, um einen Agent zu erstellen, und Dienste können auf den Agent zugreifen. Mit Rollen können Sie den Zugriff und die Berechtigungen von Hauptkonten steuern.

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.

Den Zugriff können Sie mit Identity and Access Management (IAM) oder der Dialogflow-Konsole steuern. In einigen Situationen müssen Sie die Google Cloud Console verwenden:

  • Die Dialogflow-Konsole weist dem Nutzer, der den Agent erstellt hat, die Rolle Agent Admin (IAM-Projektinhaber) zu. Wenn Sie den Administrator ändern, mehrere Administratoren für einen Agent hinzufügen oder Administratoren für einen Agent entfernen möchten, müssen Sie die Google Cloud Console verwenden.
  • Wenn Sie Integrationen mit anderen Google Cloud-Ressourcen wie Cloud Functions haben und einer Anwendung keinen vollständigen Projektzugriff gewähren möchten, müssen Sie in der Google Cloud Console für IAM die Dialogflow API-Rollen (Admin, Client oder Reader) zuweisen.
  • Eine Teilmenge von IAM-Rollen verfügt über entsprechende Dialogflow-Konsole-Rollen. Wenn Sie eine Rolle zuweisen möchten, die in der Dialogflow-Konsole nicht vorhanden ist, müssen Sie die Google Cloud Console verwenden.

Rollen

In der folgenden Tabelle sind die für Dialogflow relevanten Rollen aufgeführt. 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. Mit diesem Zugriff sind einige Berechtigungen für den Voll- und Bearbeitungszugriff verfügbar.
  • Lesezugriff: Berechtigung zum Lesen einer Ressource.
Rolle in Dialogflow-Konsole IAM-Rolle Zusammenfassung der Berechtigungen Berechtigungsdetails
Admin 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
  • Änderung der Agent-Edition in der Dialogflow-Konsole oder mithilfe der API
Siehe Definitionen von einfachen IAM-Rollen.
Entwickler 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 von einfachen IAM-Rollen.
Prüfer 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 von einfachen IAM-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 vollständigen Zugriff auf Dialogflow-spezifische Ressourcen benötigen:
  • Vollständiger Zugriff auf alle Dialogflow-Ressourcen über die Google Cloud Console oder APIs.
  • Lesezugriff auf Agents über die Dialogflow-Konsole
  • Intent-Erkennung mithilfe der API
Siehe Definitionen von Dialogflow-IAM-Rollen.
Dialogflow >
Dialogflow API-Client
Gewähren Sie Zugriff 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-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 kein Zugriff auf den Inline-Editor zur Cloud Functions- oder Google Assistant-Integration
  • 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 APIs.
  • Lesezugriff auf Agents über die Dialogflow-Konsole, nicht für den Simulator.
  • Keine Intent-Erkennung mithilfe der API
Siehe Definitionen von Dialogflow-IAM-Rollen.

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 erteilen, 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 Dienstkonto-Mitgliedern ist erforderlich, wenn Sie ein Dienstkonto für mehrere Projekte und Agents verwenden möchten. Die E-Mail-Adresse, die mit Ihrem Dienstkonto verknüpft ist, finden Sie in der Google Cloud Console auf der IAM-Seite Dienstkonten.

So fügen Sie ein Mitglied hinzu:

  1. Klicken Sie oben auf der Seite auf die Schaltfläche zum Hinzufügen eines Mitglieds.
  2. Geben Sie die E-Mail-Adresse des Mitglieds 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 Mitglieds.
  2. Wählen Sie eine andere Rolle aus.
  3. Klicken Sie auf Speichern.

Mitglied entfernen

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

Zugriffssteuerung mit der Dialogflow-Konsole

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

  1. Rufen Sie die Dialogflow ES-Konsole auf.
  2. Wählen Sie Ihren Agent im oberen Bereich der linken Seitenleiste aus.
  3. Klicken Sie neben dem Namen des Agents auf die Schaltfläche für die Einstellungen.
  4. Klicken Sie auf den Tab Share (Freigeben). Wenn der Tab Share (Teilen) nicht angezeigt wird, haben Sie nicht die erforderliche Rolle „Agent Admin“.

Der Tab "Teilen" zeigt und deren Zugriffsebene an.

Nutzer hinzufügen

  1. Geben Sie unter Invite New People (Weitere Personen einladen) die E-Mail-Adresse des Nutzers ein.
  2. Wählen Sie eine Rolle aus.
  3. Klicken Sie auf Hinzufügen.
  4. Klicken Sie auf Speichern.

Berechtigungen ändern

  1. Suchen Sie den Nutzer in der Liste.
  2. Wählen Sie eine andere Rolle aus.
  3. Klicken Sie auf Speichern.

Nutzer entfernen

  1. Suchen Sie den Nutzer in der Liste.

  2. Klicken Sie auf die Schaltfläche zum Löschen des jeweiligen Nutzers.

  3. Klicken Sie auf Speichern.

Automatisch erstellte Dienstkonten

Wenn Sie einen Agent erstellen und verwenden, erstellt Dialogflow automatisch einige Dienst-Agents.

Wenn Sie die diesen Dienst-Agents zugewiesenen Rollen sehen möchten, aktivieren Sie auf der IAM-Seite die Option Von Google bereitgestellte Rollenzuweisungen einschließen.

Sie sollten keine Schlüssel für diese Dienst-Agents löschen, bearbeiten oder herunterladen und diese Dienst-Agents nicht für direkte API-Aufrufe verwenden. Sie werden nur vom Dialogflow-Dienst verwendet, um eine Verbindung zu einer Reihe von Ihrem Agent verwendeten Google Cloud-Diensten herzustellen. Möglicherweise müssen Sie sich beim Konfigurieren bestimmter Dialogflow-Features per E-Mail an diese Dienst-Agents wenden.

In der folgenden Tabelle werden einige dieser Dienst-Agents beschrieben:

IAM-E-Mail-Formular Zweck
service-project-number
@gcp-sa-dialogflow.iam.gserviceaccount.com
Wird verwendet, um den Agent mit den Diensten zu verbinden, die den Integrationstraffic verarbeiten.
firebase-adminsdk-alphanum
@project-id.iam.gserviceaccount.com
Wird verwendet, um den Agent mit den Diensten zu verbinden, die den Google Assistant-Integrationstraffic verarbeiten.
project-id
@appspot.gserviceaccount.com
Wird verwendet, um den Agent mit den Diensten zu verbinden, die den Google Assistant-Integrationstraffic verarbeiten.

Administratorrolle übertragen

Um die Administratorrolle eines Agents zu übertragen, muss der vorhandene Administrator die oben genannten Schritte ausführen, um einen neuen Administrator hinzuzufügen. Sobald der neue Administrator die gewährte Rolle akzeptiert hat, kann der alte Administrator entfernt werden.

Wenn der vorhandene Administrator nicht mehr in Ihrer Organisation arbeitet und Sie die Administratorrolle auf einen anderen Mitarbeiter übertragen möchten, haben Sie zwei Möglichkeiten:

  • Ein Administrator der Organisation, die mit dem Projekt des Agents verknüpft ist, hat die Berechtigung, den Agent-Administrator zu ändern.
  • Wenn Sie Leseberechtigungen für den Agent haben, können Sie den Agent exportieren und in einen Agent importieren, bei dem der gewünschte Mitarbeiter Administrator ist. Dies kann zu Ausfallzeiten bei einem Agent in der Live-Produktion führen, während der Agent migriert und Integrationen aktualisiert werden.

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 du jedoch deinen eigenen Client implementierst, musst du unter Umständen deinen 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 Zugriffsobjekte 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 für die Cloud Storage-Zugriffssteuerung Informationen zu Cloud Storage-Rollen.

Wenn du deinen eigenen Client implementierst und OAuth verwendest, musst du den folgenden OAuth-Bereich verwenden:

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