OAuth für Ihre Anwendung konfigurieren

Um OAuth für Ihre Anwendung zu konfigurieren, richten Sie einen OAuth-Workflow ein und aktivieren Sie die OAuth-Bereiche der Data Portability API.

OAuth-Workflow einrichten

Folgen Sie der einfachen Anleitung in der Google Identity-Dokumentation, um einen OAuth-Ablauf für Ihre Anwendung einzurichten.

Die meisten Entwickler verwenden den Ablauf Serverseitige Webanwendungen, um die OAuth-Einwilligung einzuholen. Sie können aber auch den Ablauf JavaScript-Webanwendungen oder den Ablauf Mobile und Desktop-Apps verwenden.

Exporte können länger als die Lebensdauer eines Zugriffstokens dauern. Der Nutzer kann auch einen Zugriffszeitraum von 30 oder 180 Tagen gewähren. Möglicherweise müssen Sie ein Aktualisierungstoken abrufen und es regelmäßig gegen ein neues Zugriffstoken austauschen. Weitere Informationen finden Sie unter Zugriffstoken für Webanwendungen aktualisieren und Zugriffstoken für mobile und Desktop-Apps aktualisieren.

Wichtig: Die Verlängerung von OAuth-Tokens ist nur für Nutzer verfügbar, wenn der Veröffentlichungsstatus Ihres OAuth-Clients In Produktion und nicht Testen lautet. Außerdem laufen Tokens, die OAuth-Clients mit dem Veröffentlichungsstatus Testing gewährt werden, immer nach 7 Tagen ab, auch wenn Sie eine Gültigkeitsdauer von 30 oder 180 Tagen auswählen. Weitere Informationen finden Sie unter OAuth-Zustimmungsbildschirm einrichten.

OAuth-Bereiche der Data Portability API

Wenn Sie Ihre Data Portability API-Anwendung für OAuth konfigurieren, aktivieren Sie die für Ihre Anwendung relevanten OAuth-Bereiche der Data Portability API. Für einige Bereiche, z. B. sensitive und restricted, gelten zusätzliche Anforderungen.

Wenn Sie Ihrem OAuth-Ablauf die Bereiche der Data Portability API hinzufügen, kann es vorkommen, dass der Nutzer der Einwilligung für einige, aber nicht alle Bereiche zustimmt. Ihre App muss in diesen Fällen Folgendes tun:

  • Teilweise Datenexporte zulassen
  • Nutzer darüber informieren, dass er nicht alle erforderlichen Bereiche ausgewählt hat (und fehlerfrei abbrechen)
  • Nutzer um die verbleibenden Einwilligungen bitten

Außerdem kann ein Nutzer festlegen, ob er Ihnen Zugriff auf seine Daten einmalig oder für 30 oder 180 Tage gewährt.

  • Wenn ein Nutzer Ihnen einmaligen Zugriff gewährt, darf Ihre App einen Datenexport für diese Einwilligung ausführen. Wenn Sie die Daten noch einmal herunterladen möchten, ist eine neue Einwilligung des Nutzers erforderlich.
  • Wenn ein Nutzer Ihnen einen zeitbasierten Zugriff gewährt, darf Ihre App Datenexporte für den angegebenen Zeitraum oder bis zum Widerruf der Einwilligung durch den Nutzer ausführen.
  • Sie können auch Zeitfilter auf Ihre Anfrage anwenden, um Daten für einen bestimmten Zeitraum zu exportieren, z. B. für die letzten 6 Monate.

Außerdem sollte beachtet werden, dass Ihre App während des OAuth-Ablaufs nicht weiß, mit welchem Google-Konto die Einwilligung erteilt wurde. Das OAuth-Token, das Ihre Anwendung erhält, ist nicht transparent.

Informationen dazu, wie Nutzer Daten teilen, finden Sie unter Kopie Ihrer Daten mit Drittanbietern teilen.

Einschränkungen für Bereiche

In diesem Abschnitt werden Einschränkungen in Bereichen beschrieben, die zu Fehlern führen.

Gemischte Bereiche

Anfragen für API-Bereiche der Datenübertragbarkeit (z. B. https://www.googleapis.com/auth/dataportability.*) dürfen nicht mit anderen Bereichen (z. B. https://www.googleapis.com/auth/userinfo.email) kombiniert werden. Hier ein Beispiel für eine ungültige Anfrage, bei der der eingeschränkte Teil fett formatiert ist:

https://accounts.google.com/o/oauth2/v2/auth?
client_id=client_id&
redirect_uri=redirect_uri&
response_type=token&
scope=https://www.googleapis.com/auth/dataportability.myactivity.search+https://www.googleapis.com/auth/userinfo.email&
include_granted_scopes=false

Zuvor gewährte Berechtigungen

Sie sollten include_granted_scopes=true niemals festlegen, wenn Sie DPAPI-Bereiche anfordern. Hier ist ein Beispiel für eine fehlerhafte Anfrage, bei der der eingeschränkte Teil fett formatiert ist:

https://accounts.google.com/o/oauth2/v2/auth?
client_id=client_id&
redirect_uri=redirect_uri&
response_type=token&
scope=https://www.googleapis.com/auth/dataportability.myactivity.search&
include_granted_scopes=true

Zu viele Bereiche

Wenn Ihrer Anfrage zu viele Bereiche angehängt sind, kann der Fehler 400 bad request auftreten. Das passiert, wenn die URL-Länge die in Browsern unterstützte Länge überschreitet. Sie können das Problem beheben, indem Sie Ihre Anfragen für Bereiche in mehrere kleinere Batches aufteilen und die inkrementelle Autorisierung verwenden, um für jeden Batch eine Einwilligung anzufordern.

Kategorien für Bereiche

Eine Liste aller von der Data Portability API unterstützten OAuth-Bereiche und ihrer Kategorien finden Sie unter Verfügbare OAuth-Bereiche. Eine Liste aller Ressourcengruppen und OAuth-Bereiche, die von einem bestimmten Dienst unterstützt werden, finden Sie auf der Referenzseite für das Schema für diesen Dienst.