YouTube Data 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. Elscope
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.
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 Data 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.