added auth mode changes

This commit is contained in:
2026-01-19 19:22:15 -05:00
parent 2c2936b01f
commit d9732830bb
2 changed files with 24 additions and 8 deletions

16
api/package-lock.json generated
View File

@@ -26,18 +26,11 @@
"@types/express": "^5.0.3", "@types/express": "^5.0.3",
"@types/morgan": "^1.9.10", "@types/morgan": "^1.9.10",
"@types/node": "^24.8.1", "@types/node": "^24.8.1",
"tsc-alias": "^1.8.16",
"cross-env": "^10.1.0", "cross-env": "^10.1.0",
"tsc-alias": "^1.8.16",
"typescript": "^5.9.3" "typescript": "^5.9.3"
} }
}, },
"node_modules/@epic-web/invariant": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/@epic-web/invariant/-/invariant-1.0.0.tgz",
"integrity": "sha512-lrTPqgvfFQtR/eY/qkIzp98OGdNJu0m5ji3q/nJI8v3SXkRKEnWiOxMmbvcSoAIzv/cGiuvRy57k4suKQSAdwA==",
"dev": true,
"license": "MIT"
},
"node_modules/@apm-js-collab/code-transformer": { "node_modules/@apm-js-collab/code-transformer": {
"version": "0.8.2", "version": "0.8.2",
"resolved": "https://registry.npmjs.org/@apm-js-collab/code-transformer/-/code-transformer-0.8.2.tgz", "resolved": "https://registry.npmjs.org/@apm-js-collab/code-transformer/-/code-transformer-0.8.2.tgz",
@@ -55,6 +48,13 @@
"module-details-from-path": "^1.0.4" "module-details-from-path": "^1.0.4"
} }
}, },
"node_modules/@epic-web/invariant": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/@epic-web/invariant/-/invariant-1.0.0.tgz",
"integrity": "sha512-lrTPqgvfFQtR/eY/qkIzp98OGdNJu0m5ji3q/nJI8v3SXkRKEnWiOxMmbvcSoAIzv/cGiuvRy57k4suKQSAdwA==",
"dev": true,
"license": "MIT"
},
"node_modules/@gar/promisify": { "node_modules/@gar/promisify": {
"version": "1.1.3", "version": "1.1.3",
"resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz",

View File

@@ -20,6 +20,18 @@ function parseJwt(token) {
return JSON.parse(Buffer.from(token.split('.')[1], 'base64').toString()); return JSON.parse(Buffer.from(token.split('.')[1], 'base64').toString());
} }
const devLogin = (req: any, res: any, next: any) => {
// The object here must match what your 'verify' function returns: { memberId }
const devUser = { memberId: 1 }; // Hardcoded ID
req.logIn(devUser, (err: any) => {
if (err) return next(err);
const redirectTo = req.session.redirectTo || process.env.CLIENT_URL;
delete req.session.redirectTo;
return res.redirect(redirectTo);
});
};
passport.use(new OpenIDConnectStrategy({ passport.use(new OpenIDConnectStrategy({
issuer: process.env.AUTH_ISSUER, issuer: process.env.AUTH_ISSUER,
authorizationURL: process.env.AUTH_DOMAIN + '/authorize/', authorizationURL: process.env.AUTH_DOMAIN + '/authorize/',
@@ -128,6 +140,10 @@ router.get('/login', (req, res, next) => {
// Store redirect target in session if provided // Store redirect target in session if provided
req.session.redirectTo = req.query.redirect; req.session.redirectTo = req.query.redirect;
if (process.env.AUTH_MODE === 'mock') {
return devLogin(req, res, next);
}
next(); next();
}, passport.authenticate('openidconnect')); }, passport.authenticate('openidconnect'));