diff --git a/striker-ui-api/src/app.ts b/striker-ui-api/src/app.ts index 7a46c4ad..51e76a39 100644 --- a/striker-ui-api/src/app.ts +++ b/striker-ui-api/src/app.ts @@ -1,6 +1,8 @@ import cors from 'cors'; import express, { json } from 'express'; +import { GUARD_API } from './lib/consts'; + import { guardApi, passport, session } from './middlewares'; import routes from './routes'; import { rrouters } from './lib/rrouters'; @@ -25,7 +27,7 @@ export default (async () => { app.use(passport.authenticate('session')); rrouters(app, routes.private, { - assign: (router) => [guardApi, router], + assign: GUARD_API ? (router) => [guardApi, router] : undefined, route: '/api', }); rrouters(app, routes.public, { route: '/api' }); diff --git a/striker-ui-api/src/lib/consts/ENV.ts b/striker-ui-api/src/lib/consts/ENV.ts index 2bf7036f..1a56c1f8 100644 --- a/striker-ui-api/src/lib/consts/ENV.ts +++ b/striker-ui-api/src/lib/consts/ENV.ts @@ -11,6 +11,13 @@ export const DEFAULT_JOB_PROGRESS: number = Number.parseInt( process.env.DEFAULT_JOB_PROGRESS ?? '0', ); +/** + * Toggles whether to guard API endpoints with session information. + */ +export const GUARD_API = process.env.GUARD_API + ? process.env.GUARD_API === 'true' + : true; + /** * Port to use by the express app. *