🔒 Registro cerrado · Apertura oficial próximamente · Acceso exclusivo para alumnos activos
Iniciar SesiónOpenID Connect, la capa de identidad
5 tareas · 40 min · Principiante
OAuth 2.0 deja sin responder quién inició sesión. OpenID Connect (OIDC) lo resuelve encima de OAuth con un token propio, el de identificación, y con reglas de validación que la aplicación debe cumplir una por una. Terracota Logística registró cómo cinco de sus aplicaciones validaron ese token esta mañana y no todas lo hicieron bien. Aprendes qué trae el token y qué hay que comprobar, y lees el registro de validaciones. Solo lectura, con valores inventados.
Objetivo de la sala
OAuth 2.0 deja sin responder quién inició sesión. OpenID Connect (OIDC) lo resuelve encima de OAuth con un token propio, el de identificación, y con reglas de validación que la aplicación debe cumplir una por una. Terracota Logística registró cómo cinco de sus aplicaciones validaron ese token esta mañana y no todas lo hicieron bien. Aprendes qué trae el token y qué hay que comprobar, y lees el registro de validaciones. Solo lectura, con valores inventados.OpenID Connect 1.0 es una capa de identidad sobre OAuth 2.0. La aplicación pide el alcance openid junto a los demás y, además del token de acceso, el servidor de autorización le entrega un token de identificación, un JWT (JSON Web Token, RFC 7519) firmado por el servidor. Dentro van afirmaciones sobre el inicio de sesión. Las obligatorias son cinco: el emisor (iss), el identificador estable de la persona dentro de ese emisor (sub), la audiencia (aud, que debe incluir el client_id de la aplicación), la fecha de vencimiento (exp) y la de emisión (iat).
Y hay un punto fino: un token de identificación es para que lo lea el cliente. No se manda a una API como si fuera un token de acceso.
Esta tarea se hace en el laboratorio
Una consola para consultar la base de datos, aquí en la página. No instalas nada y no puedes romper nada.
Responde para continuar
¿Qué cambia cuando una aplicación añade el alcance openid a su solicitud?
La aplicación que recibe el token tiene que comprobar varias cosas, según la especificación (OpenID Connect Core, sección 3.1.3.7): que el emisor (iss) sea exactamente el del servidor en que confía; que su propio client_id esté en la audiencia (aud); que la firma sea válida; que no haya vencido (exp); y, si envió un nonce, que el token traiga el mismo.
Abre el laboratorio y compara en validaciones_id_token las columnas aud_recibido y client_id_propio. Una aplicación aceptó un token que en realidad se emitió para otra: un token de otra aplicación no debe servir de inicio de sesión aquí.
Esta tarea se hace en el laboratorio
Una consola para consultar la base de datos, aquí en la página. No instalas nada y no puedes romper nada.
Responde para continuar
¿Qué aplicación aceptó un token de identificación cuya audiencia era otra aplicación?
El nonce es un valor al azar que la aplicación envía al pedir el inicio de sesión y que el servidor copia dentro del token. Al recibirlo, la aplicación comprueba que el valor es el que envió. Así sabe que el token responde a su petición y no es uno viejo o de otra sesión reutilizado.
Compara nonce_recibido con nonce_enviado en cada fila. Una aplicación aceptó el token aunque los dos valores no coinciden.
Esta tarea se hace en el laboratorio
Una consola para consultar la base de datos, aquí en la página. No instalas nada y no puedes romper nada.
Responde para continuar
¿Qué aplicación aceptó un token cuyo nonce no era el que envió?
Un fallo de validación casi nunca se nota en el uso normal: la persona inicia sesión y todo parece bien. Solo se ve en el registro, que es donde se compara lo recibido con lo esperado. Por eso el nonce y la audiencia se comprueban aunque «ya funcione».
Esta tarea se hace en el laboratorio
Una consola para consultar la base de datos, aquí en la página. No instalas nada y no puedes romper nada.
Responde para continuar
¿Qué problema evita comprobar el nonce?
El registro incluye también la hora de validación y la de vencimiento (exp): un token vencido no debe aceptarse. Una fila decide «rechazado» y es la correcta, porque el emisor recibido no es el esperado. Cuenta cuántas filas terminaron en «aceptado» cuando alguna de las comprobaciones (emisor, audiencia, nonce o vencimiento) debía haber fallado.
Esta tarea se hace en el laboratorio
Una consola para consultar la base de datos, aquí en la página. No instalas nada y no puedes romper nada.
Responde para continuar
¿Cuántas validaciones aceptaron un token que debía rechazarse?
Conectando con la base…
Tablas
validaciones_id_token
- aplicacion
- iss_recibido
- iss_esperado
- aud_recibido
- client_id_propio
- nonce_recibido
- nonce_enviado
- exp
- validado_a_las
- decision
El resultado aparece aquí.
fila(s)
Whoami-Labs Pro
Whoami-Labs Pro utiliza cookies
Utilizamos cookies y almacenamiento local para el funcionamiento del sitio, seguridad de sesión y, si lo autorizas, analítica y marketing. Puedes aceptar, rechazar o personalizar. Política de Privacidad
Preferencias
Configuraciones de cookies
Elige qué categorías permitir. Las esenciales siempre están activas. Consulta la Política de Privacidad.
Esenciales
Siempre activas · sesión, CSRF, tema y esta preferencia
Necesarias para iniciar sesión, proteger formularios (CSRF) y recordar tu elección de cookies y tema. Sin ellas la plataforma no funciona de forma segura.
Analíticos
Hoy no activos en la plataforma; listos para cuando se conecten
Nos ayudan a entender uso de cursos y páginas. Si los activas, se usarán cuando conectemos analítica; hasta entonces no se carga ningún tracker.
Marketing
Hoy no activos; campañas futuras solo con tu permiso
Comunicaciones o campañas. No activos hoy en la plataforma; quedarán listos si los conectamos y solo si los permites.