Web-Apps müssen ein Zugriffstoken abrufen, um Google-APIs sicher aufzurufen.
Die Google Identity Services-JavaScript-Bibliothek unterstützt sowohl die Authentifizierung für die Nutzeranmeldung als auch die Autorisierung zum Abrufen eines Zugriffstokens für die Verwendung mit Google-APIs. Die Bibliothek ist nur für die Verwendung in Browsern vorgesehen.
Bei der Authentifizierung wird festgestellt, wer jemand ist. Sie wird häufig als Nutzerregistrierung oder ‑anmeldung bezeichnet. Die Autorisierung ist der Prozess, bei dem der Zugriff auf Daten oder Ressourcen gewährt oder abgelehnt wird. Dazu gehören das Einholen und Verwalten der Nutzereinwilligung, das Begrenzen der Menge an Daten oder Ressourcen, die mit Bereichen geteilt werden, und das Abrufen eines Zugriffstokens zur Verwendung mit Google-APIs.
In diesen Leitfäden werden Themen zur Autorisierung und Datenfreigabe behandelt.
Unter So funktioniert die Nutzerautorisierung werden die einzelnen Schritte der Nutzerautorisierung detailliert beschrieben. Außerdem finden Sie dort Beispiele für Nutzerdialoge.
Wenn Sie Hilfe bei der Authentifizierung und der Implementierung der Nutzerregistrierung und ‑anmeldung benötigen, lesen Sie den Abschnitt Über Google anmelden.
Diese Bibliothek ist nicht für die Verwendung mit serverseitigen JavaScript-Frameworks wie Node.js vorgesehen. Verwenden Sie stattdessen die Node.js-Clientbibliothek von Google.
Änderungen
Für Nutzer bietet die Google Identity Services-Bibliothek im Vergleich zu früheren JavaScript-Bibliotheken zahlreiche Verbesserungen der Nutzerfreundlichkeit, darunter:
- Die Authentifizierung für die Nutzeranmeldung und die Autorisierung zum Abrufen eines Zugriffstokens zum Aufrufen von Google-APIs haben jetzt zwei separate und unterschiedliche Nutzerabläufe: einen für die Anmeldung und einen für die Einwilligung während der Autorisierung. Durch die separaten Nutzerabläufe wird klar unterschieden, wer Sie sind und was eine App tun kann.
- Verbesserte Sichtbarkeit und detaillierte Kontrolle der Datenfreigabe während der Nutzereinwilligung.
- Browserbasierte Dialogfelder, die die Reibung verringern und bei denen Nutzer Ihre Website nicht verlassen müssen, um Folgendes zu tun:
- ein Zugriffstoken von Google abrufen oder
- einen Autorisierungscode an Ihre Backend-Plattform senden.
Für Entwickler haben wir uns darauf konzentriert, die Komplexität zu verringern, die Sicherheit zu verbessern und die Integration zu vereinfachen. Beispiele für diese Änderungen:
- Die Nutzerauthentifizierung für die Anmeldung und die Autorisierung zum Abrufen eines Zugriffstokens für den Aufruf von Google APIs sind zwei separate und unterschiedliche Gruppen von JavaScript-Objekten und -Methoden. Dadurch wird die Komplexität und der Detaillierungsgrad reduziert, der für die Implementierung der Authentifizierung oder Autorisierung erforderlich ist.
- Eine einzelne JavaScript-Bibliothek unterstützt jetzt sowohl die:
- Impliziter OAuth 2.0-Ablauf, der verwendet wird, um ein Zugriffstoken für die Verwendung im Browser abzurufen
- Der OAuth 2.0-Vorgang mit Autorisierungscode, auch als Offlinezugriff bezeichnet, wird gestartet, um einen Autorisierungscode sicher an Ihre Backend-Plattform zu senden, wo er gegen ein Zugriffs- und ein Aktualisierungstoken eingetauscht werden kann. Bisher waren diese Abläufe nur über mehrere Bibliotheken und durch direkte Aufrufe von OAuth 2.0-Endpunkten verfügbar. Eine einzelne Bibliothek verkürzt den Integrationsaufwand. Anstatt mehrere Bibliotheken und OAuth 2.0-Konzepte einzubinden und zu lernen, können Sie sich auf eine einzige, einheitliche Schnittstelle konzentrieren.
- Die Indirektion über Getter-Funktionen wurde aus Gründen der Einfachheit und Lesbarkeit entfernt.
- Bei der Verarbeitung von Autorisierungsantworten können Sie selbst entscheiden, ob Sie zur Erfüllung von Anfragen ein Promise verwenden möchten.
- Die Google API-Clientbibliothek für JavaScript wurde mit den folgenden Änderungen aktualisiert:
- Das
gapi.auth2-Modul und die zugehörigen Objekte und Methoden werden nicht mehr automatisch im Hintergrund geladen, sondern durch explizitere Objekte und Methoden der Google Identity Services-Bibliothek ersetzt. - Das automatische Aktualisieren abgelaufener Zugriffstokens wurde entfernt, um die Sicherheit und das Bewusstsein der Nutzer zu verbessern. Wenn ein Zugriffstoken abläuft, muss Ihre App Google API-Fehlerantworten verarbeiten und ein neues, gültiges Zugriffstoken anfordern und abrufen.
- Um eine klare Trennung von Authentifizierung und Autorisierung zu unterstützen, wird es nicht mehr unterstützt, einen Nutzer gleichzeitig in Ihrer App und in seinem Google-Konto anzumelden und gleichzeitig ein Zugriffstoken auszugeben. Bisher wurden Nutzer beim Anfordern eines Zugriffstokens auch in ihrem Google-Konto angemeldet und es wurde ein JWT-ID-Token für die Nutzerauthentifizierung zurückgegeben.
- Das
- Um die Sicherheit und den Datenschutz der Nutzer zu erhöhen, folgen die Anmeldedaten, die pro Nutzer für die Autorisierung ausgestellt werden, dem Prinzip der geringsten Berechtigung. Sie enthalten nur ein Zugriffstoken und Informationen, die für die Verwaltung erforderlich sind.