CSP

CSP 生成器

生成 Content Security Policy 安全策略

安全与认证
🔒 100% 本地运行 — 你的数据不会离开当前页面
由 Evan 维护•最近更新:2026年9月29日
选项模式
Policy Input

先填核心 CSP 指令,直接生成策略头;report-uri 和场景对照可在高级模式查看。

CSP Output
CSP policy will appear here
🔒 浏览器内本地处理
页面阅读模式

完整说明还包括常见问题处理、操作示例、代码片段、FAQ 和相关工具,便于核对结果或排查问题。

工具说明

将 default-src、script-src、style-src、img-src 和 connect-src 组合为 CSP 响应头值与 HTML meta 标签。可选 report-uri 仅放入响应头值,因为 meta 方式不支持 CSP 报告。来源表达式按输入输出;工具不校验策略、不检查应用依赖,也不会创建报告接收端。

生产可用片段

报告接收端应放在 HTTP 响应头中

text

Header value:
default-src 'self'; report-uri https://example.com/csp-report

Meta:
<meta http-equiv="Content-Security-Policy" content="default-src 'self'">

添加 report-uri 不会自动把策略变为 report-only;需要仅观察时,应明确使用 Content-Security-Policy-Report-Only 响应头。

常见问题

输出包含完整 HTTP 响应头吗?

面板显示 Content-Security-Policy 和对应值,但复制按钮仅复制值。请自行设置响应头名称;仅观察而不执行时使用 Content-Security-Policy-Report-Only。

响应头和 meta 可以互换吗?

不可以。meta CSP 不支持 report-only 或 report-uri,frame-ancestors 等其他指令也需要响应头。工具会从 meta 输出移除 report-uri。使用 meta 时应将策略放在 head 较前位置。

同源来源应该如何填写?

使用带单引号的 CSP 表达式,例如 'self'。表单不会自动补引号、生成 nonce 或计算内联脚本哈希;来源列表需要匹配应用实际加载的资源。

生成 CSP 就能证明应用已受保护吗?

不能。应结合真实页面行为测试并检查违规报告。宽泛来源、unsafe-inline 和 unsafe-eval 都可能削弱策略。report-uri 只指定你需自行提供的接收地址,不同浏览器的报告支持也不同。

继续浏览