网站内容策略(和HTML中的onclick等元素事件(1)(图))
优采云 发布时间: 2022-01-22 19:21网站内容策略(和HTML中的onclick等元素事件(1)(图))
'不安全的内联'
允许内联 CSS、脚本、javascript:URI 和元素事件处理程序,如 HTML 中的 onclick
'不安全评估'
使用 JavaScript 的 eval() 函数允许不安全的动态代码
'nonce-id'
如果 id 与 nonce 属性值匹配,则允许运行内联 CSS 或脚本,例如script-src 'nonce-abc123' 在块内运行内联代码
'sha256-hash'
如果文件内容与生成的 SHA-256 哈希匹配,则允许使用样式或脚本
CSP 开发建议
从严格的默认策略 default-src 'none' 开始是可行的;然后根据需要添加更多权限。对于大多数网站来说,一个好的起点可能是:
从严格的默认策略default-src 'none'开始是可行的;然后根据需要添加其他权限。对于大多数 网站 来说,一个好的起点可能是:
default-src 'none'; style-src 'self' data:; img-src 'self' data:; script-src 'self'; connect-src 'self';
这允许来自同一来源的样式、图像、脚本和 Ajax 请求。
这允许来自同一来源的样式、图像、脚本和 Ajax 请求。
在网络浏览器中打开您的页面,然后启动开发者工具控制台。将报告被阻止的资源警告,例如
在网络浏览器中打开页面并启动开发者工具控制台。将报告被阻止的资源警告,例如
Refused to load the script 'XXX' because it violates the following Content Security Policy directive: "YYY".
您可能需要浏览各种页面,以确保您已了解网站所需的所有字体、图像、视频、脚本、插件和 iframe。
您可能需要浏览各个页面,以确保您已考虑 网站 所需的所有字体、图像、视频、脚本、插件和 iframe。
谷歌服务
Google 提供范围广泛的服务,您可能正在使用分析、字体、地图等。不幸的是,这些在需要进一步 Ajax 调用、内联执行和数据方案的一系列 URI 上启用。您最终可能会得到一个复杂的策略,例如:
Google 提供范围广泛的服务,您可能会使用分析、字体、地图等。不幸的是,它们在需要进一步 Ajax 调用、内联执行和数据方案的一系列 URI 上启用。您最终可能会采用复杂的策略,例如:
default-src 'self';
style-src 'self' 'unsafe-inline' *.googleapis.com;
script-src 'self' *.google-analytics.com *.googleapis.com data:;
connect-src 'self' *.google-analytics.com *.googleapis.com *.gstatic.com data:;
font-src 'self' *.gstatic.com data:;
img-src * data:;
(为清楚起见添加了换行符,但不得在实际代码中使用。)
(为清楚起见添加了换行符,但不得在实际代码中使用。)
在撰写本文时这是无法避免的,其他第三方供应商也将面临类似的挑战。
在撰写本文时,这是不可避免的,其他第三方供应商也将面临类似的挑战。
再次测试
最后,再次重新测试您的网页,幸运的是,您的内容安全政策等级已显着提高。该工具还将针对旧浏览器、HTTPS、CORS、MIME、cookie、引荐来源网址和重定向策略标头提供建议。
最后,再次重新测试您的页面,幸运的是您的内容安全策略级别已显着提高。该工具还将建议有关旧浏览器、HTTPS、CORS、MIME、cookie、引荐来源网址和重定向策略的标头。
实施内容安全政策是预防意外安全问题的重要一步。另一个重要步骤是选择重视安全的托管服务提供商。我们的合作伙伴 SiteGround 是寻求为高级网站安全性而构建的网络托管平台的任何人的绝佳选择。
实施内容安全策略是防止意外安全问题的重要一步。另一个重要步骤是选择具有安全性的托管服务提供商。对于寻求增强网站安全性的网络托管平台的任何人来说,我们的合作伙伴 SiteGround 都是一个不错的选择。
翻译自:
内容安全政策