JWT
JWT (JSON Web Token) es un token compacto y autocontenido que transmite claims de forma segura como objeto JSON, ampliamente usado para autenticación sin estado e intercambio de información.
Propósito
Transmite información de autenticación entre servicios sin estado, eliminando el almacenamiento de sesiones en el servidor.
Mecanismo
Tiene tres partes —Header (algoritmo).Payload (claims).Signature—, todas codificadas en Base64URL. La firma usa HMAC o RSA, y verificarla garantiza integridad. Los claims incluyen iss (emisor), exp (caducidad) y sub (sujeto). El token no está cifrado; evita datos sensibles en el payload.
Casos de uso
- Autenticación de API sin estado
- Tokens OAuth 2.0
- Transferencia de identidad entre dominios en SSO
- Autenticación entre servicios
Ejemplos
- entrada
header.payload.signatureOutputRead the payload after verifying the signatureBase64URL plus signature
Errores comunes
- Placing sensitive data in the payload (it is only Base64, not encryption)
- Keep only non-sensitive claims in the payload
Términos relacionados
OAuth
OAuth 2.0 es un marco de autorización que permite a aplicaciones de terceros acceder a los recursos del usuario con su consentimiento, sin compartir contraseñas, mediante tokens. GLOSARIO
Cookie
Una cookie es un par clave-valor fijado por el servidor y almacenado por el navegador, enviado automáticamente con las peticiones del mismo origen para la gestión de sesiones y estado. GLOSARIO
HMAC
HMAC (código de autenticación de mensajes basado en hash) es un MAC que combina una función hash con una clave secreta, proporcionando integridad y autenticidad. GLOSARIO
Bearer Token
Un token Bearer es un tipo de token que funciona puramente por posesión: se envía en la cabecera Authorization: Bearer <token>, de modo que quien lo posea puede usarlo, sin credenciales adicionales. GLOSARIO