-
Notifications
You must be signed in to change notification settings - Fork 0
fix: security headers #29
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
✅ Deploy Preview for tradetrust-gallery ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
WalkthroughUpdated Netlify configuration to add a comprehensive set of security headers (expanded Content-Security-Policy, Permissions-Policy, cross-origin policies, HSTS, X-Content-Type-Options, Referrer-Policy, etc.) for all routes while retaining existing CORS and X-Frame-Options settings. (≤50 words) Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes
Possibly related PRs
Suggested reviewers
Poem
Pre-merge checks and finishing touches❌ Failed checks (1 warning)
✅ Passed checks (1 passed)
✨ Finishing touches🧪 Generate unit tests (beta)
📜 Recent review detailsConfiguration used: CodeRabbit UI Review profile: CHILL Plan: Pro 📒 Files selected for processing (1)
🔇 Additional comments (3)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 1
🧹 Nitpick comments (1)
netlify.toml (1)
16-16: Consider restrictingimg-srcto known domains.The CSP allows
img-src 'self' data: https:, which permits images from any HTTPS domain. While this supports external imagery, it's overly permissive and could allow unintended image loads.If feasible, restrict this to specific trusted domains or CDNs (e.g.,
img-src 'self' data: https://cdn.example.com https://images.example.com). If dynamic/user-controlled image sources are required, document this decision.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
netlify.toml(1 hunks)
🔇 Additional comments (2)
netlify.toml (2)
19-19: Verify Permissions-Policy syntax compliance.The format of the Permissions-Policy header uses
fullscreen=(self)andpicture-in-picture=()syntax. Confirm this matches the current RFC standard for this header (RFC 9529 or relevant specification), as some older/newer formats may differ.For reference, the standard format is typically
Directive=()orDirective=(self)orDirective=(self "https://example.com"). Ensure consistency across all directives.
6-30: Well-structured comprehensive security header suite.The overall approach is solid:
- CORS locked to a specific origin (
https://ref.tradetrust.io)- Clickjacking protection via
X-Frame-Options: DENY- Origin isolation via CORP + COOP (Spectre mitigation)
- HTTPS enforcement via HSTS with
preloadflag- MIME type sniffing prevention and referrer controls
- Granular Permissions-Policy for browser features
The addition of comments for each header improves maintainability. Once the CSP and Permissions-Policy items above are addressed, this will be a strong baseline.
Summary by CodeRabbit