Saltar al contenido principal
Para obtener los mejores resultados al implementar el de aplicaciones nativas a web, Auth0 recomienda seguir las prácticas recomendadas que se indican a continuación. Estas pautas pueden ayudar a garantizar la integridad de la sesión:

Usa las Actions de Post Login para limitar la duración de la sesión

Usa los desencadenadores de Action post-login para garantizar que las sesiones web creadas mediante SSO de aplicaciones nativas a web tengan un tiempo de vida limitado y caduquen rápidamente cuando estén inactivas.  Puedes usar las Actions de post-login para detectar cuándo se inicia una sesión mediante un session_transfer_token y aplicar tiempos de espera de inactividad y absolutos más cortos:
exports.onExecutePostLogin = async (event, api) => {
  if (event.session_transfer_token) {
    const now = Date.now();

    // Limitar la sesión a 30 minutos en total
    api.session.setExpiresAt(now + 30 * 60 * 1000);

    // Establecer el tiempo de espera de inactividad en 15 minutos
    api.session.setIdleExpiresAt(now + 15 * 60 * 1000);
  }
};

Vincule session_transfer_token al dispositivo o a la dirección IP

Para reducir el riesgo de reutilización del token si se filtra, se registra o es interceptado, vincule siempre el session_transfer_token al entorno de origen mediante enforce_device_binding.

Usa cookies seguras en lugar de parámetros de consulta

Envía el session_transfer_token a la aplicación web mediante una cookie segura y HTTPOnly limitada a tu dominio de Auth0 para evitar el registro o la divulgación accidentales del token a través de URL y reducir la superficie de ataque frente a la interceptación de tokens. Si necesitas usar un parámetro de consulta (por ejemplo, para Chrome Custom Tabs), asegúrate de que la URL use HTTPS y elimina el token de la URL después de usarlo.

Evita emitir tokens de actualización a aplicaciones web salvo que sea necesario

Activa allow_refresh_token solo en las aplicaciones web que realmente necesiten tokens de larga duración. En la mayoría de los casos, los de corta duración, combinados con la autenticación silenciosa, son suficientes y más seguros en entornos de navegador.

Habilita Allow Refresh Tokens cuando corresponda para configurar los tokens de actualización como “en línea”

Para evitar credenciales huérfanas e impedir que los sigan activos después de cerrar sesión, usa la configuración allow_refresh_token para garantizar que los tokens de actualización emitidos a través de SSO de aplicaciones nativas a web queden vinculados a la sesión que los emitió. Si la sesión se revoca o vence, el token de actualización se invalida automáticamente.

Habilitar la revocación en cascada obligatoria

Para garantizar que se revoquen todas las sesiones web y los tokens de actualización asociados a un session_transfer_token, habilite enforce_cascade_revocation en la aplicación nativa. Esto es fundamental para garantizar la invalidación segura de las sesiones entre aplicaciones.