Implémenter l'authentification OAuth 2.0

YouTube Live Streaming API accepte le protocole OAuth 2.0 pour autoriser l'accès aux données utilisateur privées. La liste ci-dessous explique certains concepts fondamentaux de OAuth 2.0:

  • Lorsqu'un utilisateur tente pour la première fois d'utiliser une fonctionnalité de votre application nécessitant qu'il soit connecté à un Google Account or YouTube account, votre application lance le processus d'autorisation OAuth 2.0.

  • Votre application dirige l'utilisateur vers le serveur d'autorisation de Google. Le lien vers cette page indique les scope d'accès demandés par votre application pour le compte de l'utilisateur. scope spécifie les ressources que votre application peut récupérer, insérer, mettre à jour ou supprimer lorsqu'elle agit en tant qu'utilisateur authentifié.

  • Si l'utilisateur autorise votre application à accéder à ces ressources, Google lui renvoie un jeton. Selon le type de votre application, elle valide le jeton ou l'échange contre un autre type de jeton.

    Par exemple, une application Web côté serveur échange le jeton renvoyé contre un jeton d'accès et un jeton d'actualisation. Le jeton d'accès permet à l'application d'autoriser les requêtes au nom de l'utilisateur, tandis que le jeton d'actualisation permet à l'application de récupérer un nouveau jeton d'accès lorsque le jeton d'accès d'origine expire.

Important:Vous devez obtenir les identifiants d'autorisation dans la console Google APIs pour pouvoir utiliser l'autorisation OAuth 2.0.

Remarque : Votre chaîne doit être approuvée pour que vous puissiez utiliser la fonctionnalité YouTube En direct, qui permet au propriétaire de la chaîne de diffuser des contenus en direct. Si vous envoyez des requêtes API au nom d'un utilisateur authentifié dont la chaîne n'est pas activée ou ne peut pas diffuser de contenu en direct, l'API renvoie une erreur insufficientPermissions.

Flux OAuth 2.0

Les API Google sont compatibles avec plusieurs cas d'utilisation d'OAuth 2.0:

  • Le flux Applications Web côté serveur est compatible avec les applications Web qui peuvent stocker des informations persistantes de manière sécurisée.
  • Le flux Applications Web JavaScript est compatible avec les applications JavaScript exécutées dans un navigateur.
  • Le flux Applications mobiles et de bureau est compatible avec les applications installées sur un appareil, tel qu'un téléphone ou un ordinateur.
  • Le flux Téléviseurs et périphériques à entrée limitée est compatible avec les appareils dotés de capacités d'entrée limitées, telles que les consoles de jeu et les caméras vidéo.
  • Le flux OAuth 2.0 pour le flux des comptes de service est compatible avec les interactions de serveur à serveur qui n'accèdent pas aux informations utilisateur. Cependant, YouTube Live Streaming API n'est pas compatible avec ce flux. 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.