Implementación de la autenticación de OAuth 2.0

YouTube Live Streaming API es compatible con el protocolo OAuth 2.0 para autorizar el acceso a los datos privados del usuario. En la siguiente lista, se explican algunos conceptos básicos de OAuth 2.0:

  • Cuando un usuario intenta usar por primera vez una funcionalidad de tu aplicación que requiere que acceda a un Google Account or YouTube account, tu aplicación inicia el proceso de autorización OAuth 2.0.

  • La aplicación dirige al usuario al servidor de autorización de Google. El vínculo a esa página especifica el scope de acceso que tu aplicación solicita para la cuenta del usuario. El scope especifica los recursos que tu aplicación puede recuperar, insertar, actualizar o borrar cuando actúa como el usuario autenticado.

  • Si el usuario da su consentimiento y autoriza a la aplicación a acceder a esos recursos, Google genera un token para la aplicación. Dependiendo del tipo de aplicación, puede validar el token o cambiarlo por uno de otro tipo.

    Por ejemplo, una aplicación web del servidor cambia el token que se generó por un token de acceso y otro de actualización. El token de acceso permite a la aplicación autorizar solicitudes en nombre del usuario, mientras que el token de actualización permite a la aplicación obtener un nuevo token de acceso cuando el original expire.

Importante: Para utilizar la autorización de OAuth 2.0, debes obtener credenciales de autorización en la Consola de APIs de Google.

Nota: Un canal debe estar aprobado para usar YouTube en vivo. que permite al propietario del canal transmitir contenido en vivo a ese canal. Si envías APIs solicitudes en nombre de un usuario autenticado cuyo canal no está habilitado o no es apto para transmitir contenido en vivo, la API mostrará un error insufficientPermissions.

Flujos de OAuth 2.0

Las API de Google admiten varios casos de uso de OAuth 2.0:

  • El flujo de apps web del servidor admite aplicaciones web que pueden almacenar información persistente de forma segura.
  • El flujo de apps web de JavaScript admite aplicaciones de JavaScript que se ejecutan en un navegador.
  • El flujo de aplicaciones para dispositivos móviles y de escritorio admite aplicaciones instaladas en un dispositivo, como un teléfono o una computadora.
  • El flujo de TVs y dispositivos de entrada limitada admite dispositivos con capacidades de entrada limitadas, como consolas de juegos y cámaras de video.
  • El flujo de OAuth 2.0 para el flujo de cuentas de servicio admite interacciones servidor a servidor que no tienen acceso a la información del usuario. Sin embargo, YouTube Live Streaming API no admite este flujo. 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.