问题标签 [content-security-policy]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
132571 浏览

content-security-policy - 内容安全策略“数据”不适用于 Chrome 28 中的 base64 图像

在这个简单的示例中,我尝试使用元 http-equiv 标头设置 CSP 标头。我包含了一个 base64 图像,我正在尝试让 Chrome 加载图像。

我认为data关键字应该这样做,但不知何故它不起作用。

我只是在开发人员工具中收到以下错误:

拒绝加载图像 'data:image/png;base64,R0lGODlhDwAPAOZEAMkJCfAwMMYGBtZMTP75+euIiPFBP+hVVf3v7...nw7yk4Mjr6GLUY+joiBI2QAACABwJDCHgoKOHEoAYVBAgY8GGAxAoNGAmiwMHBCgccKDAKBAA7' 因为它违反了以下“im'self' data 指令”:

示例代码(JSFiddle 不适用于此示例,因为我无法在那里设置元标头):

您也可以在此处打开此示例:
https ://dl.dropboxusercontent.com/u/638360/ps/csp.html

0 投票
0 回答
791 浏览

jquery - Google Chrome 扩展跨域 AJAX 和 Content-Security-Policy

我正在开发一个谷歌浏览器扩展,它从每个站点获取标题和描述,并使用 jQuery AJAX 发送到服务器。我正在使用清单版本 2,并为所有 http 和 https 站点添加了权限。Ajax 调用在所有站点上都运行良好。

昨天我发现了一个错误,导致代码无法将 ajax 发送到服务器。准确地说,facebook.com 不允许我发送跨域请求,因为他们使用的是 HTTP 标头 Content-Security-Policy(CSP)。我认为这与扩展的 CSP 无关。我正在使用 Google Chrome 版本 25.0.1364.160。

这个 CSP Header 是否破坏了 Chrome 扩展的跨域请求能力?有什么解决方法吗?

提前致谢!

0 投票
2 回答
1940 浏览

ruby-on-rails - 如何在 Rails 应用中查看内容安全策略违规报告?

我使用了secure_headers gem https://github.com/twitter/secureheaders并将csp配置为

但我仍然无法查看我的报告http://localhost:3000/report并且页面没有重定向

0 投票
1 回答
1880 浏览

iframe - 授权混合内容标签?

我遇到了混合内容 (http/https) 阻塞的问题。

我有三个子域“a”、“b”和“c”。只有 b 在 SSL 上可用。

我有一个具有以下框架结构的 Web 应用程序:

最后一个链接被浏览器的混合内容安全策略阻止:

铬 30:[blocked] The page at https://b.example.com ran insecure content from http://c.example.com.

火狐 23:Blocked loading mixed active content "http://c.example.com/"

如何授权此直接<a href="">链接绕过混合内容安全策略?

0 投票
1 回答
4561 浏览

javascript - 内容安全策略未从 localhost 加载文件

我正在尝试制作一个 chrome 应用程序并希望使用 livereload 以便在我进行更改时自动更新我的。但我收到以下消息-</p>

错误信息:

我在 manifest.json 文件中添加了以下部分,但随后 chrome 开始发出警告。

警告 -

尝试安装此扩展程序时出现以下警告:“content_security_policy”仅允许用于扩展程序和旧版打包应用程序,这是一个打包应用程序。

更新:

当我使用后台脚本创建窗口时会出现问题。即当我的清单文件中有这个时

如果我不使用后台脚本,请改用这个 -

然后一切正常。有人可以解释为什么会这样吗?

0 投票
6 回答
13932 浏览

javascript - 如何检测内容安全策略 (CSP)

我注意到 GitHub 和 Facebook 现在都在实施这项政策,这限制了第三方脚本在他们的体验/站点中运行。

有没有办法使用JavaScript检测文档是否针对 CSP 运行?我正在编写一个小书签,如果用户所在的网站不支持嵌入脚本标签,我想给他们一条消息。

0 投票
1 回答
1032 浏览

jquery - 在 Chrome 打包应用程序中使用 AngularJS 时如何避免 JQuery globalEval 调用?

我正在构建一个 Chrome 打包应用程序,根据 CSP,我不允许使用 eval() 方法。现在,由于我使用的是 JQuery(1.10.2 版)和 AngularJS(1.0.6 版),因此库方法之一在内部调用 JQuery globalEval。(globalEval 内部调用 eval,不能在这个上下文中使用)

有没有人遇到过同样的问题?除了重新设计 JQuery/AngularJS 库方法之外的任何解决方法?

0 投票
1 回答
193 浏览

security - 每个页面的内容安全策略(CSP)?

我了解使用 CSP 的好处,但是为 HTML 文件以外的任何内容发送这些标头是否浪费?例如,我是否需要在图像上发送 CSP 标头?为了.js文件?

0 投票
1 回答
267 浏览

javascript - 在 JavaScript 中跟踪安全策略权限

尽管设置了以下标题:

JavaScript 仍然阻止我访问 iframe.contentWindow.document:

speech.contentWindow.document在at之后从 Firefox 控制台http://bits.speech.is。Chrome 给出了更冗长但仍然神秘的内容:

有没有办法追踪这个安全策略是在哪里设置的?如何弄清楚我还缺少什么?

0 投票
1 回答
157 浏览

php - 内容安全策略允许姜扩展加载内容

当我在 chrome 上安装此生姜扩展程序时: https ://chrome.google.com/webstore/detail/spell-and-grammar-checker/kdfieneakcjfaiglcfcgkidlkmlijjnh?utm_source=chrome-ntp-icon

我查看我的页面: http ://start.funmoods.com/results.php?q=hotel.com&a=undefined&category=web&start=1&fc=br

正如您在“ginger”扩展打开时在顶部看到的那样,页面降低了。

你知道为什么我的 csp 允许姜加载它的 html 吗?

这是我的 csp 标头:

你可以在chrome developer box中自己查看

Cache-Control:no-cache, must-revalidate Connection:keep-alive Content-Encoding:gzip Content-Security-Policy:default-src ; script-src 'self' http://www.google-analytics.com http://suggest.infospace.com http://api.autocompleteplus.com http://www.googletagservices.com http://d. yimg.com https://completr.appspot.com;frame-src 'self' http: //.yhs4.search.yahoo.com http://ad.adserver-pro.net; font-src '无' ; 连接源代码“自我”;媒体源“自我”;对象源“无”;样式-src 'self' ; 内容类型:文本/html 日期:格林威治标准时间 2013 年 11 月 6 日星期三 09:22:47 到期:格林威治标准时间 1997 年 7 月 26 日星期六 05:00:00 服务器:nginx 设置 Cookie:fm=YT11bmRlZmluZWQmdXJlZj0mY2Q9JmNyPSY%3D;expires=Fri, 06-Dec-2013 09:22:47 GMT Set-Cookie: rs=WyJiYXIgcmVmYWVsaSIsImFzZGFzZCBhc2RhcyBkYXNkYXNkYXNhc2Rhc2QiLCJhc2Rhc2QgYXNkYXMgZGFzZGFzZGFzYXNkYXNkIGFzZCBzYSB6eGN2IGRnaCBydCBmc2RhZiBhc2RnIGFnIHNkZmdhc2ZnIiwiYXNkYXNkIGFzZGFzIGRhc2Rhc2Rhc2FzZGFzZCBhc2Qgc2EgenhjdiBkZ2ggcnQgZnNkYWYgYXNkZyBhZyBzZGZnYXNmZyBhcyBnZmpramJrb3BnIGZnamtsO2RmamdydGVyIiwiYXNkYXNkIGFzZGFzIGRhc2Rhc2Rhc2FzZGFzZCBhc2Qgc2EgenhjdiBkZ2ggcnQgZnNkYWYgYXNkZyBhZyBzZGZnYXNmZyBhcyBnZmpramJrb3BnIGZnamtsO2RmamdydGVyIHZiY2J4aHl0dXl1aXJ0aXlydGlvZXIiLCIhQCQlQCNAIyQlIyReIiwiaG90ZWwiLCJob3RlbC5jb20iXQ%3D%3D; expires=Tue, 27-Oct-2015 09:22:47 GMT Transfer-Encoding:chunked X-Content-Security-Policy:default-src; script-src 'self' http://www.google-analytics.com http://suggest.infospace.com http://api.autocompleteplus.com http://www.googletagservices.com http://d. yimg.com https://completr.appspot.com;frame-src 'self' http: //.yhs4.search.yahoo.com http://ad.adserver-pro.net ; font-src '无' ; 连接源代码“自我”;媒体源“自我”;对象源“无”;样式-src 'self' ; X-WebKit-CSP:default-src ; script-src 'self' http://www.google-analytics.com http://suggest.infospace.com http://api.autocompleteplus.com http://www.googletagservices.com http://d. yimg.com https://completr.appspot.com.yhs4.search.yahoo.com http://ad.adserver-pro.net;font-src '无' ; 连接源代码“自我”;媒体源“自我”;对象源“无”;样式-src 'self' ;