Autenticación sin contraseña con enlaces mágicos en Next.js 15 y Scalekit

Aprende a iniciar sesión sin contraseña con enlaces mágicos en Next.js 15 mediante API routes y middleware. Guía con Scalekit: enviar enlace, verificar y emitir sesión.

miércoles, 3 de septiembre de 2025 • 3 min de lectura • Equipo Q2BSTUDIO

Inteligencia-Artificial-

Las contraseñas son un lío. La gente las olvida, los flujos de restablecimiento fallan y los equipos de seguridad piden más reglas con mayúsculas, símbolos y no reutilización. Para quien desarrolla esto significa complejidad. Para quien usa la app significa frustración.

Hay un camino más limpio: enlaces mágicos.

Con Scalekit puedes implementar inicio de sesión sin contraseña en Next.js 15 usando solo rutas de API y middleware. Así es como funciona.

Por qué enlaces mágicos. En muchos equipos vemos los mismos problemas: los restablecimientos de contraseña saturan soporte, los códigos por SMS se retrasan o fallan a escala y el estado de sesión se reparte entre varios servicios, haciendo las incidencias difíciles de depurar. Los enlaces mágicos resuelven esto reduciendo el login a tres pasos en el servidor: emitir un enlace, verificarlo y crear una sesión. Nada de contraseñas, sin pasarelas SMS y sin tokens frágiles en el navegador.

Paso 1 enviar el enlace. En Next.js crea una ruta de API en el backend tipo api send-magic-link que recibe un email y llama a Scalekit para generar una solicitud passwordless de tipo MAGIC_LINK con caducidad de unos 600 segundos. Devuelve una respuesta mínima y fija una cookie segura llamada sk_auth_request_id con banderas httpOnly y secure para vincular la solicitud al origen y evitar suplantaciones.

Paso 2 verificar. Cuando la persona hace clic en el enlace, tu ruta api verify-magic-link valida el token del enlace junto con el identificador de la solicitud de autenticación y confirma la identidad devolviendo el email verificado.

Paso 3 crear la sesión. Emite un JWT de corta duración y guárdalo en una cookie HttpOnly con secure y sameSite lax. A partir de ahí, el middleware puede exigir un JWT válido antes de ejecutar cualquier ruta protegida.

Por qué funciona. Enfoque server first porque la creación del enlace, la verificación y la emisión de la sesión viven en el backend. Cliente agnóstico porque el mismo API sirve para web, móvil e incluso CLI. Observabilidad total ya que los registros muestran quién solicitó, quién verificó y cuándo se emitió la sesión. Menos piezas en movimiento y un login que puedes auditar y confiar.

Guía completa. Para producción añade limitación de tasa para frenar spam en envío y verificación, cabeceras de seguridad como CSP y HSTS, registro estructurado con identificadores de correlación y persistencia en Redis o SQL. Si quieres profundizar, lee la guía paso a paso oficial de Scalekit para Next.js 15.

Cómo te ayudamos desde Q2BSTUDIO. Somos una empresa de desarrollo de software y aplicaciones a medida, especialistas en inteligencia artificial, ciberseguridad, servicios cloud AWS y Azure, servicios inteligencia de negocio con power bi, automatización de procesos y mucho más. Diseñamos e implantamos inicios de sesión passwordless con enlaces mágicos, los integramos con tus APIs y sistemas existentes, reforzamos la seguridad extremo a extremo y añadimos analítica para medir adopción y fricción. Descubre nuestro enfoque de software a medida y aplicaciones a medida y refuerza tu postura de ciberseguridad y pentesting. También combinamos estos flujos con agentes IA e iniciativas de ia para empresas, y conectamos datos con servicios de inteligencia de negocio y power bi para generar insights accionables.

Tu turno. Has implementado login sin contraseña en tus proyectos con enlaces mágicos u OTPs. Comparte tu enfoque, aprendizajes y trampas comunes en los comentarios o cuéntanos qué reto tienes y preparamos una demo con Next.js 15 y Scalekit.

¿UNA PAUSA?

Juega un momento antes de irte

NUESTROS SERVICIOS

Cómo podemos ayudarte

¿Tienes un proyecto en mente?

Cuéntanos tu visión y la convertimos en una solución de software. Sea cual sea el alcance, hacemos realidad tu idea.