Cloudant couchapp突然失效,CSP沙盒错误



我有一个couchapp,它已经托管在Cloudant免费计划上很多年了。几天前,它开始失败:html, css和img文件加载,但它不加载任何js。浏览器控制台错误是:

Blocked script execution in 'https://b482ecaa-1ac2-4933-bec9-ecade207eea0-bluemix.cloudant.com/wxd/_design/app/index.html' because the document's frame is sandboxed and the 'allow-scripts' permission is not set.

index.html响应头包括Content-Security-Policy: sandbox

我在本地局域网上有这个数据库的副本,它没有这个问题,它的响应头不包括这个。

我没有改变couchapp或任何配置,所以Cloudant一定改变了一些配置。我注意到Cloudant在10月14日更新到2.96,这与时间一致,但我在发布说明中没有看到任何提到沙箱或内容安全策略的内容。

Couchdb文档提到了与CSP相关的配置变量,但是我无法在Cloudant dashboard中找到任何方法来更改这些配置设置,也无法在Cloudant文档中找到任何提及。

这是Cloudant部分的配置错误吗?如果是,他们可能会逆转它吗?如果没有,是否有办法为我的站点更改此配置或任何其他解决方案?

更新:我有一个想法,也许我可以通过在文档中包含<meta http-equiv="Content-Security-Policy"标签来覆盖这一点,但根据CSP文档,sandbox不允许在元标记中。

不幸的是,CouchApps将不再在Cloudant上运行。正如在这篇博文中所解释的,一个新的Content-Security-Policy: sandbox头已经添加到所有的附件获取中。这将阻止JavaScript的执行,因此基于JavaScript的CouchApps将停止工作。

更改的原因是为了减轻此CVE。

最新更新