用途:为 ASP.NET MVC 项目中的 Syncfusion EJ2 控件配置内容安全策略(CSP),在限制内联脚本/样式的严格模式下仍能正常渲染,并防御 XSS 与数据注入等浏览器端攻击。
主要能力:给出 Syncfusion 专用 CSP 指令配置,包括 default-src、script-src、style-src、font-src,按需扩展 unsafe-eval、img-src、connect-src;提供允许 https://cdn.syncfusion.com、https://fonts.googleapis.com 与 https://fonts.gstatic.com 的允许列表;覆盖 ScriptManager 的非 safe-inline/nonce 处理;附带检查清单与常见违规(内联样式被拦、字体加载失败、脚本初始化失败、模板不渲染)的原因与修复。
使用方式:CSP 可放在 ~/Views/Shared/_Layout.cshtml 的 head 元标签中,或通过 IIS/代码以 HTTP 头下发;建议优先使用 HTTP 头强制生效,全局应用于所有视图,必要时按视图覆盖。开发与预发阶段可用 Content-Security-Policy-Report-Only 观察,通过 report-uri 或 report-to 收集违规报告,并结合浏览器 DevTools(F12)Console 验证。
适用场景:为 Syncfusion EJ2 控件实现 CSP 头、运行严格 CSP 模式、阻断 XSS、允许 CDN/字体等可信来源、排查 CSP 违规。
限制:模板型控件(Grid、Dialog 等)可能需要在 script-src 中加入 unsafe-eval;样式主题通常需要 unsafe-inline,应尽量避免通配符、改用显式来源,并记录放宽项及安全影响。具体实现模式与排错细节位于该技能的 references/csp-guide.md。