Add Node auth routes for ACS login
This commit is contained in:
@@ -1,17 +1,39 @@
|
||||
import path from 'node:path';
|
||||
import express from 'express';
|
||||
import cookieParser from 'cookie-parser';
|
||||
import session from 'express-session';
|
||||
import connectPgSimple from 'connect-pg-simple';
|
||||
import { env } from './config/env.js';
|
||||
import { apiRouter } from './routes/index.js';
|
||||
import { platformStatusRouter } from './routes/health.js';
|
||||
import { errorHandler } from './http/errors.js';
|
||||
import { getPool } from './db/pool.js';
|
||||
|
||||
const app = express();
|
||||
const frontendDist = path.resolve(process.cwd(), 'frontend', 'dist');
|
||||
const PgSession = connectPgSimple(session);
|
||||
|
||||
app.disable('x-powered-by');
|
||||
app.set('trust proxy', 1);
|
||||
app.use(express.json({ limit: '1mb' }));
|
||||
app.use(cookieParser());
|
||||
app.use(session({
|
||||
name: 'acs.sid',
|
||||
secret: env.sessionSecret,
|
||||
resave: false,
|
||||
saveUninitialized: false,
|
||||
store: new PgSession({
|
||||
pool: getPool(),
|
||||
tableName: 'user_sessions',
|
||||
createTableIfMissing: true,
|
||||
}),
|
||||
cookie: {
|
||||
httpOnly: true,
|
||||
sameSite: 'lax',
|
||||
secure: env.cookieSecure,
|
||||
maxAge: 1000 * 60 * 60 * 8,
|
||||
},
|
||||
}));
|
||||
|
||||
app.use(platformStatusRouter);
|
||||
app.use('/api', apiRouter);
|
||||
|
||||
Reference in New Issue
Block a user