Skip to content
Herramienta Pro

Laboratorio de flujos OAuth

Elige el grant de OAuth 2.0 correcto para cada tipo de aplicación, retira los grants obsoletos y añade PKCE donde falte.

Abrir la herramienta →

La herramienta interactiva se abre en inglés.

El grant de OAuth equivocado es la vía por la que se roban tokens. Trabajas una cola de perfiles de aplicaciones reales (una SPA, una aplicación móvil o de escritorio nativa, una CLI, una smart TV, un servicio de backend) y eliges el grant correcto para cada uno: Authorization Code + PKCE para un usuario interactivo en un cliente público, Client Credentials cuando no hay ningún usuario de por medio y el Device Authorization Grant cuando el usuario está en un dispositivo sin navegador. Retiras en cuanto los ves los grants implícito y de credenciales de contraseña del propietario del recurso (OAuth 2.1 eliminó ambos) y añades PKCE donde a un cliente de authorization code le falte. La puntuación premia el grant correcto en cada caso y penaliza además recurrir a un flujo obsoleto, porque un grant retirado es el que de verdad acaba con tokens robados. Los niveles más difíciles añaden las decisiones sutiles: device code frente a client credentials cuando hay un usuario en un dispositivo sin navegador, PKCE con loopback frente a device code para una CLI, y PKCE también en los clientes confidenciales. Es un laboratorio Pro: con una cuenta gratuita tienes 3 usos de herramientas Pro en total y después necesitas Pro.

  1. Lee el perfil de cada aplicación o integración de la cola.
  2. Pregúntate si hay un usuario autenticándose de forma interactiva y si el dispositivo puede manejar un navegador.
  3. Elige Authorization Code + PKCE, Client Credentials o Device Authorization Grant; nunca el implícito ni el de contraseña.
  4. Lee la explicación de cada caso tras la evaluación.

Preguntas frecuentes

¿Qué es el laboratorio de flujos OAuth?

Un ejercicio en el navegador en el que trabajas una cola de perfiles de aplicaciones e integraciones (una aplicación de una sola página, una aplicación móvil, una aplicación de escritorio, una herramienta de línea de comandos, una smart TV, un servicio de backend) y eliges el grant de OAuth 2.0 correcto para cada uno. Las opciones son Authorization Code con PKCE, Client Credentials, el Device Authorization Grant y los dos grants obsoletos (implícito y de contraseña del propietario del recurso) que debes aprender a no elegir nunca. Se te puntúa por elegir el grant moderno correcto en cada caso.

¿Cómo sé qué grant es el correcto?

Tres preguntas deciden casi todos los casos. ¿Hay una persona autenticándose de forma interactiva? Si no, es Client Credentials (un servicio que se autentica como sí mismo). Si sí, ¿puede el dispositivo manejar un navegador? Si no, es el Device Authorization Grant (el usuario termina en un teléfono con un código). En cualquier otro caso es Authorization Code con PKCE, que con OAuth 2.1 se aplica a todo cliente de authorization code, incluidas las aplicaciones confidenciales de servidor que además tienen un client secret.

¿Por qué los grants implícito y de contraseña siempre son incorrectos?

OAuth 2.1 dejó obsoletos los dos. El grant implícito devuelve los tokens de acceso en el fragmento de la URL de redirección sin prueba de posesión, así que se filtran por el historial del navegador, los logs y los referrers y no se pueden renovar de forma segura; Authorization Code con PKCE lo sustituye. El grant de contraseña del propietario del recurso hace que el cliente recoja directamente la contraseña del usuario, lo que se salta el inicio de sesión del proveedor de identidad y por tanto no permite MFA, SSO, passkeys ni autenticación reforzada basada en riesgo, y acostumbra a los usuarios a escribir contraseñas en formularios de aplicaciones. Para cada uso legítimo de ambos existe un sustituto moderno.

¿Se comunica con un servidor de autorización real?

No. No se envía nada a ninguna parte, no se emiten tokens y no se ejecuta ninguna criptografía. Los escenarios son perfiles de aplicaciones realistas, escritos a mano e incluidos en la página, cada uno con un grant correcto y una explicación que se muestra tras la evaluación. Funciona íntegramente en tu navegador, sin instalación.

¿Para quién es?

Para desarrolladores que integran OAuth/OIDC, ingenieros de plataforma e identidad que revisan cómo se autentican las aplicaciones y cualquiera que prepare una entrevista de seguridad o de IAM y quiera que la elección del grant se vuelva automática: cliente público frente a confidencial, usuario presente frente a solo máquina, con navegador frente a entrada limitada, y moderno frente a retirado.

¿Es gratis?

No, es un laboratorio Pro. Con una cuenta gratuita tienes 3 usos de prueba de herramientas Pro en total; después necesitas Pro.

🖤 Black Friday: new customers get 3 months of Pro for $5, then $5/month. Ends 30 Nov. Claim 3 months for $5 →