Skip to content

Commit

Permalink
Revert "feat: enable CSP in all environments (local/preview/prod) (Qu…
Browse files Browse the repository at this point in the history
…ivrHQ#1334)"

This reverts commit d0e363e.
  • Loading branch information
classcat-air committed Oct 7, 2023
1 parent 8a59b28 commit b17030e
Showing 1 changed file with 13 additions and 38 deletions.
51 changes: 13 additions & 38 deletions frontend/next.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,12 +9,16 @@ const nextConfig = {
},
// eslint-disable-next-line prefer-arrow/prefer-arrow-functions
async headers() {
return [
{
source: "/(.*)",
headers: securityHeaders,
},
];
if (process.env.NEXT_PUBLIC_ENV === "prod") {
return [
{
source: "/(.*)",
headers: securityHeaders,
},
];
} else {
return [];
}
},
};

Expand All @@ -24,11 +28,7 @@ const ContentSecurityPolicy = {
"https://fonts.googleapis.com",
process.env.NEXT_PUBLIC_SUPABASE_URL,
"https://api.june.so",
{
prod: "https://www.quivr.app/",
preview: "https://preview.quivr.app/",
local: ["http://localhost:3000", "http://localhost:3001"],
},
"https://www.quivr.app/",
],
"connect-src": [
"'self'",
Expand All @@ -50,38 +50,13 @@ const ContentSecurityPolicy = {
"'unsafe-inline'",
"'unsafe-eval'",
"https://va.vercel-scripts.com/",
{
prod: "https://www.quivr.app/",
preview: "https://preview.quivr.app/",
local: ["http://localhost:3000", "http://localhost:3001"],
},
"https://www.quivr.app/",
"https://www.google-analytics.com/",
],
"frame-ancestors": ["'none'"],
"style-src": [
"'unsafe-inline'",
{
prod: "https://www.quivr.app/",
preview: "https://preview.quivr.app/",
local: ["http://localhost:3000", "http://localhost:3001"],
},
],
"style-src": ["'unsafe-inline'", "https://www.quivr.app/"],
};

// Resolve environment-specific CSP values
for (const directive of Object.values(ContentSecurityPolicy)) {
for (const [index, resource] of directive.entries()) {
if (typeof resource === "string") {
continue;
}
directive[index] = resource[process.env.NEXT_PUBLIC_ENV];
if (Array.isArray(directive[index])) {
directive[index] = directive[index].join(" ");
}
}
}

// Build CSP string
const cspString = Object.entries(ContentSecurityPolicy)
.map(([key, values]) => `${key} ${values.join(" ")};`)
.join(" ");
Expand Down

0 comments on commit b17030e

Please sign in to comment.