Content Security Policy Manager
Content Security Policy Manager
Description
Content Security Policy Manager is a WordPress plugin that allows you to easily configure Content Security Policy headers for your site. You can have different CSP headers for the admin interface, the frontend for logged in users, and the frontend for regular visitors. The CSP directives can be individually enabled, and each policy can be set to enforce, report or be disabled.
Please note that this plugin offers limited help in figuring out what the contents of the policy should be. It only lets you configure the CSP in a easy to use interface.
Faq
To quote MDN:
Content Security Policy (CSP) is an added layer of security that helps to detect and mitigate certain types of attacks, including Cross Site Scripting (XSS) and data injection attacks. These attacks are used for everything from data theft to site defacement to distribution of malware.
To enable CSP, you need to configure your web server to return the Content-Security-Policy HTTP header.
Reporting can be enabled by setting the report-uri and/or report-to directives. You will need the URL to a server that can handle these kinds of reports, which there are several of. Report URI is one example of such a service, they have a free tier that allows up to 10 000 reports per month (any more than that is just ignored, no extra cost). They also have a CSP wizard that can help you construct your policy.
Reporting can be enabled both in report only mode and in enforce mode. You can use report-only mode to evaluate the contents of the policy by looking at which resources are reported as blocked.
Reviews
Report To not working
By ningmorris on July 13, 2023
Hello,
Since report-uri is no longer recommended anymore, I need to use report-to to send CSP reports. But for reason, it doesn't send reports with report-to. My CSP settings are as follows:
In Policy: report-to filed, I filled in csp-endpoint , in Frontend Policy Report-To Header field, I filled in the following JSON data
{
"group": "csp-endpoint",
"max_age": 10886400,
"endpoints": [
{
"url": "{CSP REPORT ENDPOINT}"
}
]
}
After saving changes in the CMS, all the commas disappeared in Frontend Policy Report-To Header field.
{ "group": "csp-endpoint" "max_age": 10886400 "endpoints": [ { "url": "{CSP REPORT ENDPOINT}" } ] }
I am wondering if you can help to take a look at it, thanks! Note: I have no problem with report-uri.
kills all CSS styles
By rintelengrafik on February 18, 2023
As soon as I leave the backend the view of my side is without any CSS. Only the plain HTML.
Very helpful and useful plugin. do you provide filters ?
By buzibuzi on January 25, 2023
We are really happy with this plugin.
im wondering if you provide a filter so i can merge some dynamic 'nonce-xx' to the policy header. this could be very very useful.
I like all the options for logged-in versus anonymous and report-only
By Jason Robinson (jsrobinson) on April 10, 2022
Extraordinaire !
By jeebeezebee on November 1, 2021
Great plugin to manage CSP
By c3idesign on May 14, 2021
Changelog
This plugin’s development happens in its GitHub repo. Feel free to send bug reports there.
1.2.1
- Fix error caused by improperly checking the chosen CSP mode when outputting headers (thanks @reatlat).
1.2.0
- Improved UI, with CSP directives divided into collapsible categories.
- Add all remaining non-deprecated CSP directives.
- Warn if enabling upgrade-insecure-requests on a site that does not support HTTPS.
- Sanitize directives on save and disallow newlines in header content.
- Various internal improvements.
1.1.0
This is a relatively small update, that only contains a few more CSP directives. The next update will contain even more, along with an updated user interface.
- Add some commonly used CSP headers that were missing (thanks Master Dan).
- Add some other user requested directives.
- Fix some translator comments.
1.0.0
First version.
- Support for different policies for admin, logged-in frontend and regular visitors.
- Different policies can have different reporting/enforcing mode.
- Directives can be configured separately, to easier see what is allowed in which cases.
- Support for configuring the Report-To header.