From ce0c04e7fa64f3e61e39ba447e2f7d1255d500cc Mon Sep 17 00:00:00 2001 From: Vantz Stockwell Date: Sat, 14 Mar 2026 15:27:53 -0400 Subject: [PATCH] fix: relax helmet CSP for Nuxt inline scripts and WebSocket connections --- backend/src/main.ts | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/backend/src/main.ts b/backend/src/main.ts index 1c984b9..7495f47 100644 --- a/backend/src/main.ts +++ b/backend/src/main.ts @@ -19,7 +19,18 @@ process.on('unhandledRejection', (reason: any) => { async function bootstrap() { const app = await NestFactory.create(AppModule); - app.use(helmet()); + app.use(helmet({ + contentSecurityPolicy: { + directives: { + defaultSrc: ["'self'"], + scriptSrc: ["'self'", "'unsafe-inline'"], + styleSrc: ["'self'", "'unsafe-inline'"], + imgSrc: ["'self'", "data:", "blob:"], + connectSrc: ["'self'", "ws:", "wss:"], + fontSrc: ["'self'", "data:"], + }, + }, + })); app.setGlobalPrefix('api'); app.useGlobalPipes(new ValidationPipe({ whitelist: true, transform: true })); app.useWebSocketAdapter(new WsAdapter(app));