Authentifizierung und Autorisierung sind Mechanismen, mit denen die Identität bzw. der Zugriff auf Ressourcen überprüft wird. In diesem Dokument wird beschrieben, wie die Authentifizierung und Autorisierung für Chat-Apps und Chat API-Anfragen funktionieren.
Prozessübersicht
Das folgende Diagramm zeigt die allgemeinen Schritte der Authentifizierung und Autorisierung für Google Chat:

Google Cloud-Projekt konfigurieren, Chat API aktivieren und Chat-App konfigurieren:Während der Entwicklung erstellen Sie ein Google Cloud-Projekt. Im Google Cloud-Projekt aktivieren Sie die Chat API, konfigurieren Ihre Chat-App und richten die Authentifizierung ein. Weitere Informationen finden Sie unter Entwicklung für Google Workspace und Chat-App erstellen.
Chat API aufrufen:Wenn Ihre App die Chat API aufruft, werden Authentifizierungsanmeldedaten an die Chat API gesendet. Wenn sich Ihre App mit einem Dienstkonto authentifiziert, werden die Anmeldedaten als Teil des Codes Ihrer App gesendet. Wenn für Ihre App die Chat API mit der Authentifizierung eines Nutzers aufgerufen werden muss, die noch nicht erteilt wurde, wird der Nutzer aufgefordert, sich anzumelden.
Ressourcen anfordern: Ihre App fordert Zugriff mit Bereichen an, die Sie beim Einrichten der Authentifizierung angeben.
Zustimmung einholen:Wenn sich Ihre App als Nutzer authentifiziert, zeigt Google einen OAuth-Zustimmungsbildschirm an, damit der Nutzer entscheiden kann, ob er Ihrer App Zugriff auf die angeforderten Daten gewähren möchte. Für die Authentifizierung mit einem Dienstkonto ist keine Einwilligung des Nutzers erforderlich.
Genehmigte Anfrage für Ressourcen senden:Wenn der Nutzer den Autorisierungsbereichen zustimmt, bündelt Ihre App die Anmeldedaten und die vom Nutzer genehmigten Bereiche in einer Anfrage. Die Anfrage wird an den Google-Autorisierungsserver gesendet, um ein Zugriffstoken zu erhalten.
Google gibt ein Zugriffstoken zurück:Das Zugriffstoken enthält eine Liste der gewährten Bereiche. Wenn die zurückgegebene Liste der Bereiche restriktiver ist als die angeforderten Bereiche, werden in Ihrer App alle Funktionen deaktiviert, die durch das Token eingeschränkt sind.
Auf angeforderte Ressourcen zugreifen:Ihre App verwendet das Zugriffstoken von Google, um die Chat API aufzurufen und auf Chat API-Ressourcen zuzugreifen.
Aktualisierungstoken abrufen (optional): Wenn Ihre App über die Lebensdauer eines einzelnen Zugriffstokens hinaus auf die Google Chat API zugreifen muss, kann sie ein Aktualisierungstoken abrufen. Weitere Informationen finden Sie unter OAuth 2.0 für den Zugriff auf Google APIs verwenden.
Weitere Ressourcen anfordern:Wenn Ihre App mehr Zugriff benötigt, fordert sie den Nutzer auf, neue Bereiche zu gewähren. Dies führt zu einer neuen Anfrage zum Abrufen eines Zugriffstokens (Schritte 3 bis 6).
Wann für Chat-Apps eine Authentifizierung erforderlich ist
Chat-Apps können Nachrichten als Reaktion auf eine Nutzerinteraktion oder asynchron senden. Sie können auch Aufgaben im Namen eines Nutzers erledigen, z. B. einen Chatbereich erstellen oder eine Liste der Personen in einem Chatbereich abrufen.
Für Chat-Apps ist keine Authentifizierung erforderlich, um auf eine Nutzerinteraktion zu reagieren, es sei denn, die Chat-App ruft die Chat API oder eine andere Google API auf, während sie eine Antwort verarbeitet.
Wenn Chat-Apps asynchrone Nachrichten senden oder Aufgaben im Namen eines Nutzers ausführen möchten, senden sie RESTful-Anfragen an die Chat API, für die eine Authentifizierung und Autorisierung erforderlich ist.
Für Antworten auf Nutzerinteraktionen ist keine Authentifizierung erforderlich.
Google Chat-Apps müssen sich nicht als Nutzer oder Chat-App authentifizieren, um Interaktionsereignisse synchron zu empfangen und darauf zu reagieren.
Google Chat-Apps empfangen Interaktionsereignisse, wenn ein Nutzer mit einer Chat-App interagiert oder sie aufruft. Dazu gehören:
- Ein Nutzer sendet eine Nachricht an eine Chat-App.
- Ein Nutzer erwähnt eine Chat-App mit @.
- Ein Nutzer ruft einen der Befehle der Chat-App auf.
Das folgende Diagramm zeigt eine Anfrage-Antwort-Sequenz zwischen einem Chat-Nutzer und einer Chat-App:

- Der Nutzer sendet eine Nachricht an die Chat-App in Google Chat.
- Google Chat leitet die Nachricht an die App weiter.
- Die App empfängt die Nachricht, verarbeitet sie und gibt eine Antwort an Google Chat zurück.
- Google Chat rendert die Antwort für den Nutzer oder in einem Gruppenbereich.
Diese Sequenz wird für jedes Chat-App-Interaktionsereignis wiederholt.
Für asynchrone Nachrichten ist eine Authentifizierung erforderlich
Asynchrone Nachrichten werden gesendet, wenn eine Chat-App eine Anfrage an die Chat API sendet, für die eine Authentifizierung und Autorisierung erforderlich ist.
Durch Aufrufen der Chat API können Chat-Apps Nachrichten in Google Chat posten oder Aufgaben im Namen eines Nutzers erledigen und auf Daten zugreifen. Nachdem beispielsweise ein Serverausfall erkannt wurde, kann eine Chat-App die Chat API aufrufen, um:
- Erstellen Sie einen Chatbereich, in dem Sie die Störung untersuchen und beheben können.
- Fügen Sie dem Chat-Gruppenbereich Personen hinzu.
- Posten Sie eine Nachricht im Chatbereich, um Details zum Ausfall anzugeben.
Das folgende Diagramm zeigt eine asynchrone Nachrichtenfolge zwischen einer Chat-App und einem Chatbereich:

- Eine Chat-App erstellt eine Nachricht, indem sie die Chat API mit der Methode
spaces.messages.create
aufruft und Nutzeranmeldedaten in die HTTP-Anfrage einfügt. - Google Chat authentifiziert die Chat-App mit Dienstkonto- oder Nutzeranmeldedaten.
- Google Chat rendert die Nachricht der App in einem angegebenen Chat-Bereich.
Chat API-Bereiche
OAuth-Zustimmungsbildschirm konfigurieren und Bereiche auswählen: Damit legen Sie fest, welche Informationen Nutzern und App-Prüfern angezeigt werden. Außerdem registrieren Sie Ihre App, damit Sie sie später veröffentlichen können.
Um den Zugriff zu definieren, der Ihrer App gewährt wird, müssen Sie Autorisierungsbereiche identifizieren und deklarieren. Ein Autorisierungsbereich ist ein OAuth 2.0-URI-String, der den Namen der Google Workspace-App, die Art der Daten, auf die sie zugreift, und die Zugriffsebene enthält.
Nicht vertrauliche Bereiche
Umfangscode | Beschreibung |
---|---|
https://www.googleapis.com/auth/chat.bot
|
„Lets Chat“-Apps können Chats ansehen und Nachrichten senden. Dieser Bereich unterstützt nur die App-Authentifizierung mit Dienstkonten. Mit diesem Bereich ist keine Authentifizierung mit Nutzeranmeldedaten oder mit domainweiter Delegierung möglich. |
Sensible Bereiche
Umfangscode | Beschreibung |
---|---|
https://www.googleapis.com/auth/chat.spaces
|
In Google Chat Unterhaltungen und Gruppenbereiche erstellen sowie Metadaten (einschließlich Verlaufs- und Zugriffseinstellungen) abrufen oder bearbeiten. |
https://www.googleapis.com/auth/chat.spaces.create
|
Neue Unterhaltungen in Chat erstellen |
https://www.googleapis.com/auth/chat.spaces.readonly
|
Chats und Gruppenbereiche in Google Chat aufrufen |
https://www.googleapis.com/auth/chat.memberships
|
Mitglieder in Chat-Unterhaltungen abrufen, hinzufügen, aktualisieren und entfernen. |
https://www.googleapis.com/auth/chat.memberships.app
|
Sich zu Google Chat-Unterhaltungen hinzufügen oder daraus entfernen |
https://www.googleapis.com/auth/chat.memberships.readonly
|
Mitglieder in Chat-Unterhaltungen ansehen. |
https://www.googleapis.com/auth/chat.messages.create
|
Nachrichten in Google Chat verfassen und senden |
https://www.googleapis.com/auth/chat.messages.reactions
|
Reaktionen auf Nachrichten in Chat ansehen, hinzufügen und löschen |
https://www.googleapis.com/auth/chat.messages.reactions.create
|
Reaktionen auf Nachrichten in Google Chat hinzufügen |
https://www.googleapis.com/auth/chat.messages.reactions.readonly
|
Reaktionen auf eine Nachricht in Google Chat ansehen |
https://www.googleapis.com/auth/chat.users.readstate
|
„Zuletzt gelesen“-Zeit für Chat-Unterhaltungen ansehen und ändern |
https://www.googleapis.com/auth/chat.users.readstate.readonly
|
„Zuletzt gelesen“-Zeit für Chat-Unterhaltungen ansehen |
https://www.googleapis.com/auth/chat.admin.spaces.readonly
|
Chats und Gruppenbereiche in Chat aufrufen, die der Domain des Administrators gehören. |
https://www.googleapis.com/auth/chat.admin.spaces
|
Chats und Gruppenbereiche in Chat ansehen oder bearbeiten, die der Domain des Administrators gehören. |
https://www.googleapis.com/auth/chat.admin.memberships.readonly
|
Mitglieder und Manager in Unterhaltungen der Administrator-Domain in Chat ansehen. |
https://www.googleapis.com/auth/chat.admin.memberships
|
Mitglieder und Manager in Unterhaltungen der Administrator-Domain in Chat abrufen, hinzufügen, aktualisieren und entfernen. |
https://www.googleapis.com/auth/chat.app.spaces
|
Unterhaltungen und Gruppenbereiche in Google Chat erstellen sowie Metadaten (einschließlich Verlaufs- und Zugriffseinstellungen) abrufen oder aktualisieren. Erfordert die Genehmigung des Administrators. Dieser Bereich unterstützt nur die App-Authentifizierung mit Dienstkonten. Mit diesem Bereich ist keine Authentifizierung mit Nutzeranmeldedaten oder mit domainweiter Delegierung möglich. |
https://www.googleapis.com/auth/chat.app.spaces.create
|
Neue Unterhaltungen und Gruppenbereiche in Chat erstellen Erfordert die Genehmigung des Administrators. Dieser Bereich unterstützt nur die App-Authentifizierung mit Dienstkonten. Mit diesem Bereich ist keine Authentifizierung mit Nutzeranmeldedaten oder mit domainweiter Delegierung möglich. |
https://www.googleapis.com/auth/chat.app.memberships
|
Mitglieder in Google Chat-Unterhaltungen und ‑Gruppenbereichen abrufen, hinzufügen, aktualisieren und entfernen. Erfordert die Genehmigung des Administrators. Dieser Bereich unterstützt nur die App-Authentifizierung mit Dienstkonten. Mit diesem Bereich ist keine Authentifizierung mit Nutzeranmeldedaten oder mit domainweiter Delegierung möglich. |
https://www.googleapis.com/auth/chat.customemojis
|
Benutzerdefinierte Emojis in Google Chat abrufen, erstellen und löschen. |
https://www.googleapis.com/auth/chat.customemojis.readonly
|
Benutzerdefinierte Emojis in Google Chat ansehen |
https://www.googleapis.com/auth/chat.users.spacesettings
|
Einstellungen für den Arbeitsbereich von Chat-Nutzern ansehen und aktualisieren. |
Eingeschränkte Bereiche
Umfangscode | Beschreibung |
---|---|
https://www.googleapis.com/auth/chat.delete
|
Unterhaltungen und Gruppenbereiche löschen und den Zugriff auf zugehörige Dateien in Chat entfernen. |
https://www.googleapis.com/auth/chat.import
|
Gruppenbereiche, Nachrichten und Mitgliedschaften in Chat importieren. Weitere Informationen finden Sie unter Chat-Apps zum Importieren von Daten autorisieren. |
https://www.googleapis.com/auth/chat.messages
|
Nachrichten abrufen, verfassen, senden, aktualisieren und löschen sowie Reaktionen auf Nachrichten hinzufügen, abrufen und löschen. |
https://www.googleapis.com/auth/chat.messages.readonly
|
Nachrichten und Reaktionen in Chat ansehen |
https://www.googleapis.com/auth/chat.admin.delete
|
Unterhaltungen und Gruppenbereiche löschen, die der Domain des Administrators gehören, und den Zugriff auf zugehörige Dateien in Chat entfernen. |
https://www.googleapis.com/auth/chat.app.delete
|
Unterhaltungen und Gruppenbereiche löschen und den Zugriff auf zugehörige Dateien in Chat entfernen. Erfordert die Genehmigung des Administrators. Dieser Bereich unterstützt nur die App-Authentifizierung mit Dienstkonten. Mit diesem Bereich ist keine Authentifizierung mit Nutzeranmeldedaten oder mit domainweiter Delegierung möglich. |
Die Bereiche in den vorherigen Tabellen geben ihre Sensibilität gemäß den folgenden Definitionen an:
Nicht vertraulich: Diese Bereiche bieten den geringsten Autorisierungszugriff und erfordern nur eine grundlegende App-Überprüfung. Weitere Informationen zu dieser Anforderung finden Sie unter Schritte zur Vorbereitung auf die Bestätigung.
Vertraulich: Diese Bereiche gewähren Ihrer App Zugriff auf die Google-Daten eines bestimmten Nutzers, nachdem der Nutzer die Autorisierung erteilt hat. Dazu ist eine zusätzliche App-Überprüfung erforderlich. Weitere Informationen zu dieser Anforderung finden Sie unter Schritte für Apps, die sensible Bereiche anfordern.
Eingeschränkt: Diese Bereiche bieten umfassenden Zugriff auf Google-Nutzerdaten und erfordern, dass Sie das Überprüfungsverfahren für eingeschränkte Bereiche durchlaufen. Weitere Informationen zu dieser Anforderung finden Sie in der Nutzerdatenrichtlinie für Google API-Dienste und den zusätzlichen Anforderungen für bestimmte API-Bereiche. Weitere Informationen finden Sie unter Schritte für Apps, die eingeschränkte Bereiche anfordern.
Wenn Ihre App Zugriff auf andere Google-APIs benötigt, können Sie diese Bereiche ebenfalls hinzufügen. Weitere Informationen zu Google API-Bereichen finden Sie unter Mit OAuth 2.0 auf Google APIs zugreifen.
Weitere Informationen zu Bereichen für Google Workspace APIs finden Sie unter OAuth-Zustimmungsbildschirm konfigurieren und Bereiche auswählen.
Arten der erforderlichen Authentifizierung
Es gibt zwei Möglichkeiten, wie Chat-Apps sich mit der Chat API authentifizieren und autorisieren können:
- Nutzerauthentifizierung
- Nutzerauthentifizierung: Damit kann eine Chat-App auf Nutzerdaten zugreifen und Aktionen im Namen eines Nutzers ausführen. OAuth-Bereiche geben die autorisierten Daten und Aktionen an. Sofern die Chat App nicht vom Administrator installiert wurde oder domainweite Delegation erhalten hat, muss der Nutzer die Chat App beim ersten Mal, wenn sie in seinem Namen eine Aktion ausführt, über den OAuth-Zustimmungsbildschirm autorisieren.
- App-Authentifizierung
Mit der App-Authentifizierung kann eine Chat-App Dienstkonto-Anmeldedaten verwenden und als sie selbst auf Daten zugreifen und Aktionen ausführen. Da die Chat-App eigene Anmeldedaten für den Zugriff auf und die Arbeit mit Ressourcen verwendet, müssen Endnutzer die API-Aufrufe der Chat-App nicht genehmigen. Außerdem können Sie dem OAuth-Zustimmungsbildschirm keine OAuth-Autorisierungsbereiche hinzufügen, die die App-Autorisierung unterstützen.
Für die App-Authentifizierung werden zwei Arten von OAuth-Autorisierungsbereichen unterstützt:
https://www.googleapis.com/auth/chat.bot
: Ihre Chat-App kann Google Chat API-Methoden aufrufen, die diesen Autorisierungsbereich unterstützen, um Ressourcen zu erstellen, zu aktualisieren, abzurufen, aufzulisten oder zu löschen, auf die sie Zugriff hat, z. B. Nachrichten in Gruppenbereichen, denen Endnutzer Ihre Chat-App hinzufügen. Ihre Chat-App kann diesen Autorisierungsbereich selbst gewähren. Es ist keine Autorisierung durch einen Administrator oder Endnutzer erforderlich.https://www.googleapis.com/auth/chat.app.*
(Developer Preview): Für die Verwendung dieser Bereiche ist eine einmalige Genehmigung durch den Administrator erforderlich. Damit Sie die Genehmigung durch den Administrator erhalten, müssen Sie das Dienstkonto der Chat-App für die Genehmigung durch den Administrator vorbereiten. Dazu erstellen Sie einen mit Google Workspace Marketplace kompatiblen OAuth-Client und konfigurieren die App im Google Workspace Marketplace SDK. Mit diesen Bereichen kann Ihre Chat-App bestimmte Google Chat API-Methoden aufrufen. Mitchat.app.spaces.create
können Apps beispielsweise Chat-Bereiche erstellen.
Wenn eine Methode sowohl die Nutzer- als auch die App-Authentifizierung unterstützt, gibt die Chat API je nach verwendetem Authentifizierungstyp unterschiedliche Ergebnisse zurück:
- Bei der App-Authentifizierung werden mit den Methoden nur Ressourcen zurückgegeben, auf die die Chat-App zugreifen kann.
- Bei der Nutzerauthentifizierung werden mit den Methoden nur Ressourcen zurückgegeben, auf die der Nutzer zugreifen kann.
Wenn Sie beispielsweise die Methode spaces.list()
mit der App-Autorisierung aufrufen, wird die Liste der Gruppenbereiche zurückgegeben, in denen die Chat-App Mitglied ist.
Wenn Sie spaces.list()
mit Nutzerautorisierung aufrufen, wird die Liste der Bereiche zurückgegeben, in denen der Nutzer Mitglied ist. In der Praxis verwenden Sie möglicherweise beide Arten der Authentifizierung, wenn Sie die Chat API aufrufen, je nach Design und Funktionen Ihrer Chat-App.
Für asynchrone Chat API-Aufrufe
In der folgenden Tabelle sind die Chat API-Methoden und die unterstützten Autorisierungsbereiche aufgeführt:
Methode | Nutzerauthentifizierung wird unterstützt | App-Authentifizierung wird unterstützt | Unterstützte Autorisierungsbereiche | |
---|---|---|---|---|
Gruppenbereiche | ||||
Gruppenbereich erstellen |
Mit Nutzerauthentifizierung:
|
|||
Gruppenbereich einrichten | – |
Mit Nutzerauthentifizierung:
|
||
Gruppenbereich erstellen |
Mit Nutzerauthentifizierung:
|
|||
Projektbereiche auflisten |
Mit Nutzerauthentifizierung:
|
|||
Suchbereiche | – |
Mit der Nutzerauthentifizierung über Administratorberechtigungen:
|
||
Space aktualisieren |
Mit Nutzerauthentifizierung:
|
|||
Gruppenbereich löschen |
Mit Nutzerauthentifizierung:
|
|||
Importvorgang für einen Gruppenbereich abschließen | – |
Mit Nutzerauthentifizierung:
|
||
Direktnachrichten finden |
Mit Nutzerauthentifizierung:
|
|||
Mitglieder | ||||
Mitglied erstellen |
Mit Nutzerauthentifizierung:
|
|||
Mitglied werden |
Mit Nutzerauthentifizierung:
|
|||
Mitglieder auflisten |
Mit Nutzerauthentifizierung:
|
|||
Mitglied löschen |
Mit Nutzerauthentifizierung:
|
|||
Mitglied aktualisieren |
Mit Nutzerauthentifizierung:
|
|||
Nachrichten | ||||
Mitteilung erstellen |
Mit Nutzerauthentifizierung:
|
|||
Nachricht erhalten |
Mit Nutzerauthentifizierung:
|
|||
Nachrichten auflisten | – |
Mit Nutzerauthentifizierung:
|
||
Nachricht aktualisieren |
Mit Nutzerauthentifizierung:
|
|||
Nachricht löschen |
Mit Nutzerauthentifizierung:
|
|||
Reaktionen | ||||
Reaktion erstellen | – |
Mit Nutzerauthentifizierung:
|
||
Reaktionen auflisten | – |
Mit Nutzerauthentifizierung:
|
||
Reaktion löschen | – |
Mit Nutzerauthentifizierung:
|
||
Benutzerdefinierte Emojis | ||||
Benutzerdefiniertes Emoji erstellen | – |
Mit Nutzerauthentifizierung:
|
||
Benutzerdefiniertes Emoji löschen | – |
Mit Nutzerauthentifizierung:
|
||
Benutzerdefiniertes Emoji erhalten | – |
Mit Nutzerauthentifizierung:
|
||
Benutzerdefinierte Emojis auflisten | – |
Mit Nutzerauthentifizierung:
|
||
Medien und Anhänge | ||||
Medien als Dateianhang hochladen | – |
Mit Nutzerauthentifizierung:
|
||
Medien herunterladen |
Mit Nutzerauthentifizierung:
|
|||
Nachrichtenanhang abrufen | – |
Mit der App-Authentifizierung:
|
||
Lesestatus von Nutzern | ||||
Lesestatus eines Nutzers für einen Bereich abrufen | – |
Mit Nutzerauthentifizierung:
|
||
Lesestatus eines Nutzers für einen Bereich aktualisieren | – |
Mit Nutzerauthentifizierung:
|
||
Lesestatus eines Nutzers für einen Thread abrufen | – |
Mit Nutzerauthentifizierung:
|
||
Einstellungen für Nutzerbereiche | ||||
Benachrichtigungseinstellung eines Nutzers für einen Chatroom abrufen | – |
Mit Nutzerauthentifizierung:
|
||
Benachrichtigungseinstellungen für einen Nutzer in einem Bereich aktualisieren | – |
Mit Nutzerauthentifizierung:
|
||
Space-Events | ||||
Gruppenbereichsereignisse abrufen | – |
Bei der Nutzerauthentifizierung müssen Sie einen Bereich verwenden, der auf dem
Ereignistyp basiert:
|
||
Space-Ereignisse auflisten | – |
Bei der Nutzerauthentifizierung müssen Sie für jeden
Ereignistyp in der Anfrage einen Bereich verwenden:
|
Für Interaktionsereignisse von Chat-Apps
In der folgenden Tabelle sind gängige Interaktionsmöglichkeiten von Nutzern mit Chat-Apps aufgeführt und es wird angegeben, ob eine Authentifizierung erforderlich oder unterstützt wird:
Szenario | Keine Authentifizierung erforderlich | Nutzerauthentifizierung wird unterstützt | App-Authentifizierung wird unterstützt | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Nachrichten empfangen von: |
|
|||||||||||||||
Auf Nachrichten antworten: |
|
|||||||||||||||
Neue Nachrichten senden: |
|
Weitere Informationen
- Eine Übersicht über die Authentifizierung und Autorisierung in Google Workspace finden Sie unter Authentifizierung und Autorisierung.
- Eine Übersicht über die Authentifizierung und Autorisierung in Google Cloud finden Sie unter Authentifizierung.
- Weitere Informationen zu Dienstkonten finden Sie unter Dienstkonten.
- Weitere Informationen zur Verwendung von OAuth 2.0 in Google APIs finden Sie unter Mit OAuth 2.0 auf Google APIs zugreifen.
- Richten Sie die Authentifizierung und Autorisierung mit Nutzeranmeldedaten oder einem Dienstkonto ein.