网工干货知识

超全学习笔记
当前位置:首页 > 干货知识

HTTP头部信息 | Content-Security-Policy

更新时间:2026年03月27日   作者:spoto   标签(Tag):
那个内容安全策略响应头字段是一种用于实施深度防御机制的工具,能够有效保护数据免受诸如跨脚本攻击等攻击的侵害。它提供了一种策略机制,使开发者能够发现应用程序中的漏洞,并降低应用程序的权限级别。此外,该机制还让开发者能够在细粒度级别上控制应用程序的运行,从而防止各种攻击,并保持内容的完整性。语法:内容安全策略:指令 指令值;指令 指令值

上述内容包含指令以及指令对应的值。多个策略指令可以放在同一行中,这些指令之间用分号分隔。

带有示例的指导方法: 1. Fetch指令:这些功能用于控制可以访问或加载特定资源的点。
  • child-src:它负责创建嵌套的浏览上下文以及请求,这些元素会填充工作线程的框架。
    Content-Security-Policy: child-src https://example.com/
  • 默认权限:default-src:它被用作该策略的默认源列表,具体取决于所输入的数值。同时,它也可以作为其他获取指令的备用方案。
    Content-Security-Policy: default-src 'self'
  • frame-src:允许使用帧的区域。它限制了在嵌套浏览环境中加载的URL。
    Content-Security-Policy: frame-src https://example.com/
  • manifest-src:它控制着那些可以加载资源中各种元素的URL。
    Content-Security-Policy: manifest-src https://example.com/
  • object-src:它用于限制那些能够加载插件内容的URL。
    Content-Security-Policy: object-src https://example.com/
  • connect-src:它用于控制那些可以通过脚本接口加载到应用程序中的URL。
    Content-Security-Policy: connect-src https://example.com/
  • font-src:它负责控制那些能够向应用程序加载字体的URL。
    Content-Security-Policy: font-src https://example.com/
  • img-src:它负责控制那些能够向应用程序中加载图像的URL。
    Content-Security-Policy: img-src https://example.com/
  • 媒体来源:它可以控制那些能够加载音频、视频以及相关文本资源的URL,从而将这些资源引入应用程序中。
    Content-Security-Policy: media-src https://example.com/
  • 风格来源:它可以控制那些能够向应用程序施加负载以及应用样式表的资源。
  • script-src:脚本来源它能够控制那些能够将 JavaScript 代码嵌入到应用程序中的来源。
  • 很少有 fetch 指令是实验性的应用程序编程接口。prefetch-src、script-src-elem、script-src-attr、style-src-elem、style-src-attr以及worker-src。
2.文档指南:这些指令用于管理所有受 CSP 管辖的文档和作业环境中的属性设置。
  • 插件类型:这限制了为限制插件被嵌入到文档中的可能性而加载的资源数量。
    Content-Security-Policy: plugin-types application/pdf
  • Base-URI:它负责控制可以加载到文档中基础元素中的URL。
  • 沙盒:HTML沙箱策略可以通过该指令的规范来由用户代理来执行。
3.导航指令包含/含有表单操作、框架祖先以及导航功能**指令。** `form-action` 指令用于控制可用于表单提交的URL。而 `frame-ancestors` 指令则限制了能够使用框架、iframe、object、embed或applet元素来嵌入资源的URL。最后,`navigate-to` 指令指定了文档可以通过各种方式访问的URL。报告指南/指示包含/含有向……报告该参数指定了用于发送违规报告的终点。之前使用的 report-uri 已经不再被推荐使用。再举几个例子吧:

文章中所有的示例都来源于World Wide Web Consortium的CSP Level 3草案。

Content-Security-Policy: script-src https://cdn.example.com/scripts/; object-src 'none'
Content-Security-Policy: script-src 'self'; report-to csp-reporting-endpoint
Content-Security-Policy: prefetch-src https://example.com/
Content-Security-Policy: worker-src https://example.com/
Content-Security-Policy: navigate-to example.com
浏览器兼容性:

CSP Level 3在Chrome 59及以上版本、Firefox 58及以上版本以及Edge 79及以上版本中提供部分支持。 CSP Level 2则在Chrome 40及以上版本、Safari 10及以上版本、Edge 76及以上版本中提供完全支持;同时,Firefox 31及以上版本以及Edge 15及以上版本也提供部分支持。 CSP Level 1则在所有版本中均提供完全支持,包括Chrome 25及以上版本、Firefox 23及以上版本、Edge 12及以上版本以及Safari 7及以上版本。

              马上抢免费试听资格
意向课程:*必选
姓名:*必填
联系方式:*必填
QQ:
思博SPOTO在线咨询

相关资讯

即刻预约

免费试听-咨询课程-获取免费资料