From 670778864e9eae897ca237ec3e42a324b1353633 Mon Sep 17 00:00:00 2001 From: Michael Zetterberg Date: Wed, 16 Oct 2024 18:46:30 +0200 Subject: [PATCH] chore: debug mfa login --- middlewares/authRequired.ts | 12 ++++++++---- middlewares/currentWebLogin.ts | 12 +++++++++++- 2 files changed, 19 insertions(+), 5 deletions(-) diff --git a/middlewares/authRequired.ts b/middlewares/authRequired.ts index 7a3dc62df..a1c954db3 100644 --- a/middlewares/authRequired.ts +++ b/middlewares/authRequired.ts @@ -37,13 +37,17 @@ import type { MiddlewareMatcher } from "@/types/middleware" * https://authjs.dev/reference/nextjs */ export const middleware = auth(async (request) => { - const { nextUrl } = request - const lang = findLang(nextUrl.pathname)! + console.log("[mwauth] start") + console.log("[mwauth] request.nextUrl.origin", request.nextUrl.origin) + console.log("[mwauth] request.nextUrl", request.nextUrl) + console.log("[mwauth] request", request) + const lang = findLang(request.nextUrl.pathname)! const isLoggedIn = !!request.auth const hasError = request.auth?.error const nextUrlPublic = getPublicNextURL(request) + console.log("[mfa] nextUrlPublic", nextUrlPublic) /** * Function to validate MFA from token data @@ -55,15 +59,15 @@ export const middleware = auth(async (request) => { : false return !(request.auth?.token.mfa_scope && isMFATokenValid) } - const isMFAPath = mfaRequired.includes(nextUrl.pathname) + const isMFAPath = mfaRequired.includes(request.nextUrl.pathname) if (isLoggedIn && isMFAPath && isMFAInvalid()) { console.log("[mfa] required") const headers = new Headers(request.headers) headers.set("x-returnurl", nextUrlPublic.href) headers.set("x-login-source", "mfa") - console.log("[mfa] nextUrlPublic", nextUrlPublic) console.log("[mfa] headers", headers) + console.log("[mfa] request.nextUrl", request.nextUrl) console.log("[mfa] request", request) diff --git a/middlewares/currentWebLogin.ts b/middlewares/currentWebLogin.ts index 14fb89e67..9a3dfcf66 100644 --- a/middlewares/currentWebLogin.ts +++ b/middlewares/currentWebLogin.ts @@ -9,6 +9,10 @@ import type { NextMiddleware } from "next/server" import type { MiddlewareMatcher } from "@/types/middleware" export const middleware: NextMiddleware = (request) => { + console.log("[updatelogin] start") + console.log("[updatelogin] request.nextUrl.origin", request.nextUrl.origin) + console.log("[updatelogin] request.nextUrl", request.nextUrl) + console.log("[updatelogin] request", request) const returnUrl = request.nextUrl.searchParams.get("returnurl") if (!returnUrl) { @@ -20,8 +24,14 @@ export const middleware: NextMiddleware = (request) => { const headers = new Headers(request.headers) headers.set("x-returnurl", returnUrl) headers.set("x-login-source", "seamless") + console.log("[updatelogin] headers", headers) - return NextResponse.rewrite(new URL(`/${lang}/login`, request.nextUrl), { + console.log("[updatelogin] request.nextUrl", request.nextUrl) + console.log("[updatelogin] request", request) + + const u = new URL(`/${lang}/login`, request.nextUrl) + console.log("[updatelogin] rewrite url", u) + return NextResponse.rewrite(u, { request: { headers, },