内容安全策略(Content Security Policy,简称CSP)是HTTP头中的一项安全机制,用于防止跨站脚本攻击(XSS)、数据注入等安全威胁。通过定义允许加载资源的来源,可以有效限制恶意代码的执行。

核心功能 ✅

  • 阻止非法脚本执行:指定script-src仅允许信任的域名加载脚本
  • 防范数据泄露:通过connect-src控制API请求来源
  • 阻止样式劫持:限制style-src防止外部CSS篡改页面
  • 安全报告机制:启用report-uri收集违规报告

常见策略指令 📋

指令 作用 示例
default-src 默认资源加载策略 default-src 'self'
script-src 脚本加载来源 script-src https://trusted-cdn.com
img-src 图片加载来源 img-src data: https://images.example.com
frame-ancestors 控制嵌入框架的来源 frame-ancestors 'none'

配置建议 🔧

  1. 在服务器响应头中添加:
    Content-Security-Policy: script-src 'self'; style-src 'self'
    
  2. 在HTML标签中配置:
    <meta http-equiv="Content-Security-Policy" content="script-src 'self'">
    
  3. 配合report-uri使用:
    Content-Security-Policy: script-src 'self' report-uri /csp-report-endpoint
    
网络安全

扩展阅读 📚

策略配置

通过合理配置CSP,可以显著提升网站安全性。建议结合安全审计工具定期检查策略有效性。