Skip to content

Seguridad y Buenas Prácticas ​

Checklist de implementación ​

  • Usar siempre authorization_code + PKCE (S256) para login de usuarios.
  • Validar state en callback para prevenir CSRF.
  • Validar nonce cuando se utilice id_token.
  • No almacenar client_secret en frontend público.
  • Evitar guardar tokens en localStorage cuando se pueda usar sesión HttpOnly en backend/BFF.
  • Aplicar expiración corta para access_token y rotación de refresh_token.
  • Implementar revocación en logout (/oauth2/revoke) y cierre en IdP (/auth/logout/client).
  • Registrar auditoría de eventos de autenticación y errores de autorización.

Validaciones mínimas del token ​

Si validas tokens localmente:

  1. Verificar firma con jwks_uri.
  2. Verificar iss igual al issuer esperado.
  3. Verificar aud contiene tu client_id.
  4. Verificar vigencia (exp, iat) y tolerancia de reloj controlada.
  5. Verificar claims de contexto (acr, amr) si tu negocio lo exige.

Arquitectura recomendada ​

Para aplicaciones web:

  • Frontend redirige a login.
  • Backend/BFF gestiona intercambio de código por tokens.
  • Backend mantiene sesión segura y llama APIs de negocio.

Beneficio: reduce exposición de tokens y simplifica controles de seguridad.

Referencias de estándar ​