Bienvenida al curso
Bienvenido a Identidad moderna: OAuth 2, OpenID Connect, SAML y passkeys. Cuando alguien en Cafetal Digital pulsa «Iniciar sesión con Microsoft», entre el navegador, el proveedor de identidad y la aplicación viajan un código, dos o tres tokens y una firma. Si la aplicación valida mal una sola de esas piezas, el atacante no necesita la contraseña de nadie. Aquí va a mirar cada una y a montar en su computadora un proveedor de identidad para romperlo y arreglarlo.
Qué va a lograr
- Distinguir autenticación de autorización y ubicar en un flujo real al IdP, el SP o RP, el cliente y el servidor de recursos.
- Seguir el flujo de código de OAuth 2 con PKCE y explicar qué hace cada parámetro:
state,nonce,code_challenge,redirect_uri. - Validar un JWT como lo haría una API: algoritmo permitido, firma,
iss,aud,exp. - Leer una respuesta SAML y decidir si un proveedor de servicio debe aceptarla.
- Restringir y revisar el consentimiento a aplicaciones, bloquear el flujo de código de dispositivo y encontrar sus huellas en los registros.
- Endurecer un cliente OAuth en un Keycloak local, registrar una passkey y ubicarla en los niveles AAL de NIST SP 800-63B-4.
Para quién es y qué necesita
Es para quien terminó Gestión de identidades y accesos (IAM) y quiere pasar del panorama (RBAC, MFA, SSO) a los protocolos por dentro. Si nunca ha usado contenedores, Su primer contenedor con Docker le ahorra tropiezos. No hace falta programar: los scripts vienen completos y explicados.
Para practicar necesita:
- Docker (Desktop en Windows o macOS, Engine en Linux) o, en su defecto, Java para correr Keycloak desde su zip; la lección 9 explica las dos vías.
- Una terminal con
bash,curlyopenssl: la de Linux o macOS, WSL o Git Bash en Windows. - Python 3 y un navegador reciente.
Cómo está organizado
| Módulo | Qué aprende | Laboratorio |
|---|---|---|
| 1. Identidad federada y OAuth 2 | Roles, grants, código con PKCE, tokens, scopes y consentimiento | Validar diez JWT y encontrar los alterados (reto con flag) |
| 2. OpenID Connect y SAML | Discovery, userinfo y claims; aserciones SAML; cuándo usar cada protocolo | Seis respuestas SAML (reto con flag) y un login OIDC con PKCE en Keycloak |
| 3. Defender la identidad | Consentimiento, código de dispositivo, revocación de sesiones y clientes bien configurados | Endurecer un cliente en Keycloak y revocar un consentimiento |
| 4. Sin contraseñas | WebAuthn, passkeys sincronizadas y ligadas al dispositivo, AAL1 a AAL3 | Registrar una passkey en webauthn.io y ver qué guarda el sitio |
| Evaluación | 12 preguntas sobre todo el curso | Aprueba con 70 % |
Cómo aprovecharlo
Los dos primeros laboratorios son retos con flag: analiza un zip generado para el curso y pega la flag, que se comprueba en su navegador. Los otros tres cierran con comprobaciones que usted ve en pantalla. Escriba los comandos en lugar de pegarlos: así entiende cada parámetro.
El realm de Keycloak de la lección 9 se reutiliza en la 13. La pregunta corta al final de casi cada lección no suma puntos; la evaluación final sí: con 70 % o más recibe el certificado y la insignia.
Tiempo estimado
El curso toma algo más de cuatro horas, la mitad en laboratorios. Vaya a una lección por sesión; reserve una tarde para los dos laboratorios de Keycloak.