OAuth 2.0-Authentifizierung implementieren

YouTube Live Streaming API unterstützt das OAuth 2.0-Protokoll zum Autorisieren des Zugriffs auf private Nutzerdaten. In der folgenden Liste werden einige grundlegende OAuth 2.0-Konzepte erläutert:

  • Wenn ein Nutzer zum ersten Mal versucht, die Funktionalität in deiner App zu verwenden, bei der der Nutzer in einem Google Account or YouTube account angemeldet sein muss, startet deine App den Autorisierungsprozess OAuth 2.0.

  • Die Anwendung leitet den Nutzer zum Autorisierungsserver von Google weiter. Der Link zu dieser Seite gibt die scope der Zugriffsberechtigung an, die Ihre Anwendung für das Konto des Nutzers anfordert. scope gibt die Ressourcen an, die Ihre Anwendung abrufen, einfügen, aktualisieren oder löschen kann, wenn sie als authentifizierter Nutzer fungiert.

  • Wenn der Nutzer zustimmt, Ihre Anwendung für den Zugriff auf diese Ressourcen zu autorisieren, gibt Google ein Token an Ihre Anwendung zurück. Je nach Typ Ihrer Anwendung wird das Token entweder validiert oder gegen einen anderen Tokentyp ausgetauscht.

    Beispiel: Eine serverseitige Webanwendung tauscht das zurückgegebene Token gegen ein Zugriffstoken und ein Aktualisierungstoken aus. Mit dem Zugriffstoken kann die Anwendung Anfragen im Namen des Nutzers autorisieren. Mit dem Aktualisierungstoken kann die Anwendung ein neues Zugriffstoken abrufen, wenn das ursprüngliche Zugriffstoken abläuft.

Wichtig: Sie müssen die Anmeldedaten für die Autorisierung in der Google API Console abrufen, um die OAuth 2.0-Autorisierung nutzen zu können.

Hinweis: Ein Kanal muss genehmigt werden, damit er die YouTube Live-Funktion nutzen kann. Der Kanalinhaber kann Liveinhalte auf diesem Kanal streamen. Wenn du API-Anfragen im Namen eines authentifizierten Nutzers sendest, dessen Kanal nicht aktiviert ist oder keine Liveinhalte streamen kann, gibt die API den Fehler insufficientPermissions zurück.

OAuth 2.0-Abläufe

Google APIs unterstützen mehrere OAuth 2.0-Anwendungsfälle:

  • Der serverseitige Ablauf unterstützt Webanwendungen, die persistente Informationen sicher speichern können.
  • Der Ablauf JavaScript-Webanwendungen unterstützt JavaScript-Anwendungen, die in einem Browser ausgeführt werden.
  • Der Ablauf Mobile und Desktop-Apps unterstützt Anwendungen, die auf einem Gerät wie einem Smartphone oder Computer installiert sind.
  • Der Ablauf TVs und Geräte mit begrenzter Eingabe unterstützt Geräte mit eingeschränkten Eingabefunktionen wie Spielekonsolen und Videokameras.
  • Der OAuth 2.0-Vorgang für den Dienstkontofluss unterstützt Server-zu-Server-Interaktionen, die nicht auf Nutzerinformationen zugreifen. YouTube Live Streaming API unterstützt diesen Ablauf jedoch nicht. Since there is no way to link a Service Account to a YouTube account, attempts to authorize requests with this flow will generate a NoLinkedYouTubeAccount error.