microsoft-edge - Edge 忽略内容安全策略中的 script-src

标签 microsoft-edge content-security-policy

我有以下内容安全策略

value="default-src 'self'
       style-src 'self' 'unsafe-inline'; 
       script-src 'self' 'unsafe-inline' 'unsafe-eval' http://svc.webspellchecker.net; 
       img-src 'self' data: https://s3.amazonaws.com;
       frame-src 'self' *.salesforce.com *.force.com;"

这在 Chrome 和 Firefox 中运行良好。在 Edge 中它没有运行,因为我们有一些内联脚本(即 onClick="foo())。

我的理解是 default-src 设置默认值,而 script-src 应该覆盖这些默认值。

有谁知道这是否是 Edge 中的错误,或者我是否以某种方式搞砸了?

最佳答案

问题在于,虽然我们的 CSP 在 web.test.config 中看起来是这样的,但转换会将以下内容放入 web.config

value="default-src 'self'
           style-src 'self' 'unsafe-inline'; 

       script-src 'self' 'unsafe-inline' 'unsafe-eval' http://svc.webspellchecker.net; 
           img-src 'self' data: https://s3.amazonaws.com;
           frame-src 'self' *.salesforce.com *.force.com;"

基本上,XDT 将值中的 CRLF 替换为 ,这会导致 Edge 放弃处理 CSP,因此您只能得到第一行。

已提交错误。 https://connect.microsoft.com/IE/feedbackdetail/view/2272282/edge-stops-processing-content-security-policy-on-xd-xa

关于microsoft-edge - Edge 忽略内容安全策略中的 script-src,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34954042/

相关文章:

microsoft-edge - 如何将开发人员工具窗口恢复到正常配置?

css - IE 11 - 屏幕字体、媒体类型的打印字体不起作用

javascript - 为什么这个简单的应用程序会抛出此错误?

javascript - 如何正确设置helmet.js 以解决CSP 问题?

与 Chrome 的内容安全策略一起工作的 Javascript 模板引擎

javascript - 在 cordova windows 应用程序中使用触摸事件

javascript - 在 Internet Explorer 中对 svg 使用 AppendChild 是错误的

javascript - 如何让 KendoUI MVC 与内容安全策略配合使用

javascript - 在使用 CORS 的情况下,Edge 浏览器不会重定向调用

javascript - 将内容安全策略 scipt-src sha 功能与 Apache HTTP Server 结合使用