Real Time Reporting API – Autorisierung

In diesem Leitfaden wird beschrieben, wie eine Anwendung Anfragen an die Real Time Reporting API autorisiert.

Anfragen autorisieren

Nutzer müssen sich in ihrem Google-Konto anmelden, damit sie ihre Kontoinformationen auf der Google Analytics-Website abrufen können. Ebenso müssen Nutzer, die zum ersten Mal auf Ihre App zugreifen, Ihre App für den Zugriff auf ihre Daten autorisieren.

Alle Anfragen, die Ihre Anwendung an die Analytics API sendet, müssen ein Autorisierungstoken enthalten. Anhand dieses Tokens wird deine Anwendung Google gegenüber identifiziert.

Autorisierungsprotokolle

Ihre Anwendung muss zur Autorisierung von Anfragen OAuth 2.0 verwenden. Andere Autorisierungsprotokolle werden nicht unterstützt. Wenn deine Anwendung Über Google anmelden verwendet, werden einige Schritte der Autorisierung automatisch ausgeführt.

Anfragen mit OAuth 2.0 autorisieren

Alle Anfragen an die Analytics API müssen von einem authentifizierten Nutzer autorisiert werden.

Die Details dieses Autorisierungsablaufs für OAuth 2.0 hängen davon ab, welche Art von Anwendung du schreibst. Die folgende allgemeine Vorgehensweise gilt für alle Arten von Anwendungen:

  1. Wenn Sie Ihre Anwendung erstellen, registrieren Sie diese über die Google API Console. Google stellt Ihnen dann die Informationen bereit, die du später benötigst, z. B. eine Client-ID und einen Clientschlüssel.
  2. Aktivieren Sie die Analytics API in der Google API Console. Überspringe diesen Schritt, falls die API nicht in der API Console aufgeführt ist.
  3. Wenn deine Anwendung Zugriff auf Nutzerdaten benötigt, bittet sie Google um einen bestimmten Zugriffsbereich.
  4. Dem Nutzer wird von Google ein Zustimmungsbildschirm angezeigt, auf dem er gebeten wird, deine Anwendung dazu zu autorisieren, einige seiner Daten abzufragen.
  5. Wenn der Nutzer zustimmt, erhält deine Anwendung von Google ein kurzlebiges Zugriffstoken.
  6. Die Anwendung fordert Nutzerdaten an, wobei das Zugriffstoken an die Anfrage angehängt wird.
  7. Stellt Google fest, dass Ihre Anfrage und das Token gültig sind, werden die angeforderten Daten zurückgegeben.

Einige Abläufe enthalten zusätzliche Schritte, beispielsweise die Verwendung von Aktualisierungstoken zum Erhalt neuer Zugriffstoken. Weitere Informationen über die Abläufe für die unterschiedlichen Anwendungstypen findest du in der OAuth 2.0-Dokumentation.

Hier finden Sie die Informationen zum OAuth 2.0-Bereich für die Analytics API:

Umfang Bedeutung
https://www.googleapis.com/auth/analytics.readonly Lesezugriff auf die Analytics API.

Zur Anforderung eines Zugriffs mit OAuth 2.0 benötigt Ihre Anwendung die Informationen zum Umfang sowie die Informationen, die Google bei der Registrierung Ihrer Anwendung bereitstellt, z. B. die Client-ID und den Clientschlüssel.

Tipp: Die Google APIs-Clientbibliotheken können einige Schritte des Autorisierungsvorgangs für Sie übernehmen. Sie sind für verschiedene Programmiersprachen verfügbar. Weitere Informationen erhältst du auf der Seite Bibliotheken und Beispiele.

Allgemeine OAuth 2.0-Abläufe

Im Folgenden finden Sie häufige Anwendungsfälle für bestimmte OAuth 2.0-Abläufe:

Webserver

Dieser Vorgang eignet sich für den automatisierten, Offline- oder geplanten Zugriff auf die Google Analytics-Daten eines Nutzers.

Beispiel:

  • Nutzer-Dashboards werden automatisch mit den neuesten Google Analytics-Daten aktualisiert.

Clientseitig

Dieser Ablauf eignet sich für Anwendungen, bei denen Nutzer direkt mit der Anwendung interagieren, um in einem Browser auf ihre Google Analytics-Daten zuzugreifen. Es sind keine serverseitigen Funktionen mehr erforderlich. Automatisierte, Offline- oder geplante Berichte sind jedoch nicht praktikabel.

Beispiel:

Installierte Anwendungen

Dieser Ablauf gilt für Anwendungen, die als Paket verteilt und vom Nutzer installiert werden. Für diesen Vorgang muss die Anwendung oder der Nutzer Zugriff auf einen Browser haben, um den Authentifizierungsvorgang abzuschließen.

Beispiele:

  • Ein Desktop-Widget auf einem PC oder Mac.
  • Ein Plug-in für ein Content-Management-System – Der Vorteil dieses Ablaufs im Vergleich zum Webserver oder clientseitig besteht darin, dass ein einzelnes API-Konsolenprojekt für deine Anwendung verwendet werden kann. Das ermöglicht eine konsolidierte Berichterstellung und eine einfachere Installation für die Nutzer.

Dienstkonten

Dienstkonten sind nützlich für den automatischen, Offline- oder geplanten Zugriff auf Google Analytics-Daten für Ihr eigenes Konto. So können Sie beispielsweise ein Live-Dashboard mit eigenen Google Analytics-Daten erstellen und mit anderen Nutzern teilen.

Um die Analytics API verwenden zu können, müssen Sie zuerst das Einrichtungstool verwenden. Darin werden Sie durch die Erstellung eines Projekts in der Google API Console, durch das Aktivieren der API und durch das Erstellen von Anmeldedaten geführt.

So richten Sie ein neues Dienstkonto ein:

  1. Klicken Sie auf Anmeldedaten erstellen > Dienstkontoschlüssel.
  2. Wählen Sie aus, ob der öffentliche/private Schlüssel des Dienstkontos als Standard-P12-Datei oder als JSON-Datei heruntergeladen werden soll, die von einer Google API-Clientbibliothek geladen werden kann.

Ihr neues öffentliches/privates Schlüsselpaar wird generiert und auf Ihren Computer heruntergeladen. Dies ist die einzige Kopie dieses Schlüssels. Sie sind dafür verantwortlich, sie sicher aufzubewahren.

Fehlerbehebung

In folgenden Fällen schlägt die Autorisierung fehl:

  • Wenn Ihr access_token abgelaufen ist oder Sie den falschen Umfang für die API verwenden, erhalten Sie den Statuscode 401.

  • Wenn der autorisierte Nutzer keinen Zugriff auf die Datenansicht (Profil) hat, wird der Statuscode 403 ausgegeben. Prüfen Sie, ob Sie mit dem richtigen Nutzer autorisiert sind und ob er tatsächlich die von Ihnen ausgewählten Datenansichten hat.

OAuth 2.0 Playground

Mit diesem Tool können Sie den gesamten Autorisierungsablauf über eine Weboberfläche durchlaufen. Außerdem zeigt das Tool alle HTTP-Anfrageheader an, die zum Erstellen einer autorisierten Abfrage erforderlich sind. Wenn Sie keine Autorisierung zur Verwendung in Ihrer eigenen Anwendung erhalten, sollten Sie versuchen, sie über den OAuth 2.0 Playground zu verwenden. Anschließend können Sie die HTTP-Header und -Anfragen vom Playground mit den Daten vergleichen, die von der Anwendung an Google Analytics gesendet werden. Mit dieser Prüfung können Sie Ihre Anfragen ganz einfach richtig formatieren.

Ungültige Gewährung

Wenn Sie versuchen, ein Aktualisierungstoken zu verwenden, wird Folgendes zurückgegeben: invalid_grant

  • Die Uhrzeit Ihres Servers ist nicht mit dem Netzwerkzeitprotokoll (NTP) synchronisiert.
  • Das Limit für das Aktualisierungstoken wurde überschritten.

Anwendungen können mehrere Aktualisierungstokens anfordern, um auf ein einzelnes Google Analytics-Konto zuzugreifen.

Wenn ein Nutzer beispielsweise eine Anwendung auf mehreren Computern installieren und auf dasselbe Google Analytics-Konto zugreifen möchte, ist für jeden Computer ein separates Token erforderlich. Wenn die Anzahl der Aktualisierungstokens das Limit überschreitet, werden ältere Tokens ungültig. Wenn die Anwendung versucht, ein ungültiges Aktualisierungstoken zu verwenden, wird die Fehlermeldung invalid_grant zurückgegeben.

Für jedes eindeutige Paar aus OAuth 2.0-Client und Google Analytics-Konto sind maximal 25 Aktualisierungstokens zulässig. Wenn die Anwendung weiterhin Aktualisierungstokens für dasselbe Client/Konto-Paar anfordert, wird das erste ausgestellte Aktualisierungstoken ungültig, sobald das 26. Token ausgestellt wurde. Das 27. angeforderte Aktualisierungstoken würde das zweite zuvor ausgestellte Token ungültig machen usw.