拒绝框架“”,因为它违反了以下内容安全性(空框架URL)

时间:2018-10-17 12:45:57

标签: nginx content-security-policy

我有一个在 nginx 下运行的 Jira 实例,并且在 nginx 中配置了一些 CSP

现在,我们正在安装一个应用程序,该应用程序生成触发浏览器扩展的链接, URL goedit 开头:

应用程序的供应商建议使用此 CSP 标头:

new_doc = ['again', 'hello', 'world', '.'] v_1 = cv.transform(new_doc) v_2 = cv.transform([new_doc]) v_1.shape # (4, 4) v_2.shape # (1, 4) 内容安全策略


web_submit_data("do something", 
        "Action=<url of your website>", 
        "Method=POST", 
        "EncType=multipart/form-data", 
        "TargetFrame=", 
        "RecContentType=text/html", 
        "Referer=", 
        "Snapshot=t1.inf", 
        "Mode=HTML", 
        ITEMDATA, 
            "Name=name_of_files",           // form field name 
            "Value=c:/dummy/dummy.doc",     // value in Content-Disposition parameter of multipart message
            "File=Yes", 
            "ContentType=text/special",     // value in Content-Type parameter of multipart message
            "FilePath=dummy.txt",           // source path of upoaded file
            "ContentTransferEncoding=free", // value in Content-Transfer-Encoding parameter of multipart message
        ENDITEM, 
        LAST);

我现在正尝试将其合并到我们的CSP标头中。 我们的CSP标头包括

add_header

当我现在单击该应用程序的链接之一时,会在控制台中收到以下错误消息:

拒绝使用框架default-src https: goedit: wss: 'unsafe-inline' 'unsafe-eval'; img-src https: data: 'unsafe-inline'" always; ,因为它违反了以下内容安全政策

frame-src '' https://assets.zendesk.com https://www.facebook.com https://$server_name;

我想知道:为了允许这种链接(''),我需要在frame-src中添加什么?

我不想删除整个frame-src部分,我想将它们列入白名单。

先谢谢 詹斯

2 个答案:

答案 0 :(得分:0)

我知道这现在已经是一个老话题了,但是今天我遇到了类似的问题。对于我来说,我在object-src中使用data:,而我必须确保data:然后在frame-src中使用。

因此,我将检查在frame-src中是否包含任何架构,我怀疑在您的示例中可能是goedit:或wss:

答案 1 :(得分:0)

尽管它很旧,我发现:

  1. Stefan的解决方案有效。
  2. 我遇到了这样一种情况,动态iframe(即动态添加的iframe)试图加载pdf以便进行漂亮的显示(在chrome中),尽管scp包含frame-src的“ self”,并且pdf来自在当前域中,某些用户看不到内容,他们的控制台显示了上述错误。弄乱之后,发现在chrome浏览器中只是有一个需要调整的设置-进入设置,搜索“ pdf”,找到可以在其中切换pdf的部分,该设置使pdf的下载自动完成,而在浏览器中显示。