diff --git a/dashcaddy-api/routes/auth/sso-gate.js b/dashcaddy-api/routes/auth/sso-gate.js index 00c48b2..cf60f25 100644 --- a/dashcaddy-api/routes/auth/sso-gate.js +++ b/dashcaddy-api/routes/auth/sso-gate.js @@ -388,6 +388,16 @@ ft('chat').then(function(r){return r.text()}).then(function(t){ fail('Auto-login unavailable. Open Emby manually or '+authLink('re-authenticate at DashCaddy'),'API: '+JSON.stringify(j)) }).catch(function(e){fail('Could not reach DashCaddy. Open Emby manually','Error: '+(e&&e.message||'unknown'))})` }, + sec: { + // sec.sami — fleet security dashboard. Unlike media apps it needs NO + // app-specific token: it's a plain web app behind the TOTP gate. The + // SHELL above has already verified check-session returned authenticated + // (otherwise it redirected to status.sami), so here we simply enter the + // dashboard. ?direct=1 bypasses the Caddy @needsAutoLogin redirect that + // sends bare "/" back to /dashcaddy-login, avoiding a loop. + title: 'Signing in to Security...', bg: '#070b10', accent: '#58a6ff', + body: `d.textContent='Session verified, opening dashboard...';go('/?direct=1');` + }, }; const cfg = pages[service];