专题 C3:网络与安全
会导致生产故障的 CSP 常见错误
CSP 真正危险的地方不是写不出来,而是上线后静默拦截脚本、字体和第三方资源。
最常见的问题是策略与真实资源不一致
团队经常在测试环境只验证页面能打开,却没有覆盖第三方脚本、内联样式、字体和异步加载资源。
一旦 `script-src`、`connect-src`、`frame-src` 与真实依赖不匹配,生产上会出现功能缺失但接口仍然 200 的隐蔽故障。
更安全的发布方式
- 先用 Report-Only 收集真实拦截,再收紧正式策略。
- 每次接入新第三方脚本或域名时同步更新策略和回归用例。
- 把响应头 diff 纳入部署检查,防止 CDN 或反向代理覆盖 CSP。
实用输入/输出示例
输入
Content-Security-Policy: script-src 'self'; connect-src 'self'
输出
前端调用 https://api.partner.com 被拦截 需要补充 connect-src https://api.partner.com