Configuración y pruebas de autenticación OIDC para Brightcove Beacon

En este tema, aprenderá a configurar su proveedor de identidad basado en OIDC para autenticar a los usuarios de Beacon.

Introducción

Este documento detalla la configuración de cómo puede usar su proveedor de identidad basado en OIDC (OpenID Connect) para autenticar a sus espectadores en las aplicaciones Brightcove Beacon. Antes de saltar a los detalles, es útil tener una visión general del proceso. Piense en su aplicación Beacon como un cajero automático de un banco. Lo que necesita el usuario es una tarjeta bancaria para acceder al dinero en el cajero automático. Del mismo modo, su espectador necesita una identificación para acceder a los videos en su aplicación Beacon. Aquí hay una tabla que relaciona las entidades en la analogía:

Cajero Automático/Tarjeta Bancaria Aplicación de baliza
Cajero automático Aplicación de baliza
Cajero automático de funcionalidad/conectividad para autorizar transacción Autenticación automática 2.0
tarjeta bancaria Token web JSON (JWT) de OIDC
Proceso para emitir tarjeta bancaria OIDC

Así como la tarjeta bancaria debe tener el cajero automático y la funcionalidad subyacente de ese dispositivo, OIDC debe tener OAuth para funcionar. A menudo se afirma que OIDC "se asienta sobre" OAuth.

Configurar y probar la autenticación

Realice las siguientes tareas para configurar y probar su proveedor de identidad OIDC con Beacon:

  1. Obtenga de Brightcove las URL de devolución de llamada que se agregarán al proveedor de OIDC como URI de redirección permitidas. El proveedor de identidad utiliza estos URI para redirigir a los espectadores con su código de autorización URL de inicio de sesión a entornos de control de calidad y prueba. Ambos entornos especifican las URI de redirección para redirigir al Usuario con su código de autorización.
  2. Implemente y proporcione puntos finales de API al equipo de entrega de OTT para las siguientes respuestas:
    • Token de acceso (JWT)
    • Ficha de identificación (JWT)
    • Actualizar Token
    • Información de usuario
    • Autorizar
    • Códigos de emparejamiento: solo se requieren si Smart TV, Android TV, Fire TV o Apple TV están dentro del alcance; ver notas para Roku
    • JWKS
    • Cerrar sesión
    • Descubrimiento de OpenID Connect (/.well-known/openid-configuration): si se configura correctamente y se proporciona, el equipo de entrega de OTT puede descubrir los puntos finales y proporcionar un ticket de ingeniería de Beacon como se indica en el paso f. Abajo
  3. Configure las URL de redirección para iniciar y cerrar sesión como URL de redirección permitidas, si así lo requiere su proveedor de identidad.
  4. Cree una identificación de cliente para todas las aplicaciones en el alcance y proporciónelas al equipo de entrega de OTT.
  5. Crea usuarios de prueba en su proveedor de identidad y proporciona credenciales de prueba al equipo de entrega de OTT.

Para su información, las entidades de Brightcove:

  1. El equipo de entrega de OTT crea un ticket con los datos de los pasos 2 y 5 anteriores para Beacon CMS en el tablero de OTT.
  2. El equipo de entrega de OTT crea un ticket con los datos de los pasos 4 y 5 anteriores para las aplicaciones Beacon Beacon en el tablero OTT.
  3. El equipo de Beacon CMS configura Beacon CMS con las URL del paso 6 anterior.
  4. Los equipos de Beacon Apps configuran aplicaciones con el ID de cliente del paso 5 anterior y realizan pruebas de desarrollo con los usuarios de prueba proporcionados.
  5. Los equipos de control de calidad del equipo de entrega de OTT validan la autenticación de extremo a extremo antes de calificar las compilaciones para el lanzamiento de UAT.

Tokens y respuesta del usuario

Tres tokens están involucrados para que su proveedor de identidad basado en OIDC autentique a sus espectadores, estos son:

  • token_de_acceso
  • id_token
  • refresh_token

Token de acceso

El token de acceso debe tener los siguientes reclamos solo para el soporte de autenticación:

  • sub
  • es
  • Exp
  • Yo en
  • aud (solo si se solicita)

Aquí hay un ejemplo de respuesta de token de acceso que su terminal de token de proveedor de OIDC puede proporcionar:

token de acceso en bruto

Aquí está el token de acceso decodificado:

token de acceso decodificado

ficha de identificación

El token de identificación debe tener los siguientes reclamos solo para el soporte de autenticación:

  • sub
  • es
  • Exp
  • Yo en
  • aud
  • mientras tanto

Aquí hay un ejemplo de respuesta de token de ID que su terminal de token de proveedor de OIDC puede proporcionar:

token de identificación en bruto

Aquí está el token de identificación decodificado:

token de identificación decodificado

token de actualización

El token de actualización es solo un identificador. No contiene ningún dato. Los datos son el token en sí.

Respuesta de información del usuario

La respuesta de información del usuario es un objeto JSON y debe tener los siguientes campos solo para el soporte de autenticación:

  • sub
  • nombre/apodo/nombre_completo/shirt (uno o más)
  • correo

Aquí hay un ejemplo de respuesta de información del usuario:

respuesta de información del usuario

Problemas conocidos

  • Para las implementaciones de Roku, se requiere un compromiso personalizado con Brightcove Global Services. Esto se debe a los requisitos de certificación de Roku. De lo contrario, Roku rechazará la publicación del canal en la tienda de Roku. Para obtener más información, consulte el documento de autenticación en el dispositivo de Roku.