fix(auth): move forced-mfa-setup page out of /auth/ to escape proxy catch-all
The /auth/[...path]/route.ts catch-all in the Next.js frontend proxies *every* /auth/* request to the backend, including the forced-mfa-setup page route. Backend has no GET endpoint for that path → 404 → page never serves → user sees blank or bounces back to /login. Move the page to /mfa-setup (outside /auth/) and update redirects: - login page.tsx redirect - OIDC + SAML callback redirects
This commit is contained in:
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"version": "0.0.1",
|
||||
"configurations": [
|
||||
{
|
||||
"name": "logo-preview",
|
||||
"runtimeExecutable": "python3",
|
||||
"runtimeArgs": ["-m", "http.server", "8765", "--directory", "/tmp/logo-preview"],
|
||||
"port": 8765
|
||||
}
|
||||
]
|
||||
}
|
||||
+1
Submodule .claude/worktrees/distracted-khorana-af6f01 added at d903ca41cb
+1
Submodule .claude/worktrees/objective-zhukovsky-3263ec added at 571c5de3cc
Submodule
+1
Submodule .claude/worktrees/youthful-hofstadter added at 8ffe43e0d2
Submodule
+1
Submodule .claude/worktrees/zen-hermann-222ff3 added at 571c5de3cc
@@ -315,7 +315,7 @@ async def oidc_callback(
|
||||
)
|
||||
base = os.getenv("DASHBOARD_URL", "/").rstrip("/")
|
||||
return RedirectResponse(
|
||||
f"{base}/auth/forced-mfa-setup?token={setup_token}",
|
||||
f"{base}/mfa-setup?token={setup_token}",
|
||||
status_code=302,
|
||||
)
|
||||
|
||||
|
||||
@@ -202,7 +202,7 @@ async def saml_acs(request: Request, db: Session = Depends(get_db)):
|
||||
import os as _os
|
||||
base = _os.getenv("DASHBOARD_URL", "/").rstrip("/")
|
||||
return RedirectResponse(
|
||||
f"{base}/auth/forced-mfa-setup?token={setup_token}",
|
||||
f"{base}/mfa-setup?token={setup_token}",
|
||||
status_code=302,
|
||||
)
|
||||
|
||||
|
||||
@@ -45,7 +45,7 @@ export default function LoginPage() {
|
||||
// dedicated /auth/forced-mfa-setup page carrying the setup
|
||||
// token. User cannot get a session before completing it.
|
||||
if (response.data?.mfa_setup_required && response.data?.setup_token) {
|
||||
window.location.href = `/auth/forced-mfa-setup?token=${encodeURIComponent(response.data.setup_token)}`;
|
||||
window.location.href = `/mfa-setup?token=${encodeURIComponent(response.data.setup_token)}`;
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user