1

在我的 Rails 应用程序中,我让用户直接将文件上传到 S3。我通过 iframe 执行此操作,并使用 Javascript 进行上传。

最近(例如上个月),Chrome(和 Firefox)的安全设置发生了一些变化,以至于它不再自动运行这个脚本。相反,默认情况下,我的上传脚本的某些部分被阻止。这意味着上传失败,除非您单击 URL 栏右侧显示的盾牌(见附件)并明确允许脚本运行。

盾

有谁知道我该如何解决这个问题,这样我的用户就不必每次都点击这个盾牌(例如,有没有办法我?或者有谁知道我如何开始识别哪个脚本是“未经身份验证的”所以我可以避免出现这个问题?

仅供参考,在出现盾牌的同时,我的开发者控制台中会弹出一个错误:

[blocked] The page at https://www.my_domain.com/seekers/new ran insecure content from http://s3.my_domain.com.s3.amazonaws.com/.

这是否意味着不安全的内容来自http://s3.[my_domain].com.s3.amazonaws.com/

4

2 回答 2

0

这是否意味着不安全的内容来自 http://s3.[my_domain].com.s3.amazonaws.com/?

是的。

有谁知道我如何解决这个问题,这样我的用户就不必每次都点击这个盾牌(例如,有什么办法吗?

除了提供来自 https 域的所有活动内容之外,别无他法。无论如何,允许此类内容是一个真正的安全漏洞:它将允许中间人攻击者替换飞行中的未加密数据流,允许他在安全站点的上下文中执行任意代码(窃取用户数据,用户会话或用户数据混乱)。

或者有谁知道我如何开始识别哪个脚本是“未经身份验证的”,所以我可以避免出现这个问题?

Firefox 将显示完整的 URL,甚至显示启动加载的粗略位置(如果从另一个脚本启动,则包括行号)。例如脚本标签:

Blocked loading mixed active content "http://example.org/test.js" @ https://example.org/testblock.html

从另一个脚本注入的脚本(注意行号):

Blocked loading mixed active content "http://example.org/test2.js" @ https://example.org/testblock.html:7
于 2013-10-17T01:08:42.107 回答
0

查看https://pages.github.com/。您可以将项目页面链接到包含 .js 文件的存储库,然后使用文件的 .io 路径在您的应用程序中使用 https:// 获取它们

于 2017-01-25T22:47:07.587 回答