Firefox 68:本地文件现已视为跨域;有没有办法覆盖?

Jef*_*ffC 3 javascript firefox

Firefox 68修复了本地文件的安全性问题(https://www.mozilla.org/en-US/security/advisories/mfsa2019-21/#CVE-2019-11730),但这样做会中断本地测试代码。有没有办法像Chrome和Opera那样覆盖它(例如--allow-file-access-from-files)?

我在Firefox网站上找不到任何相关内容,也找不到合适的命令行选项或about:config中的任何内容。

try {
    main = opener.document;
    }
    catch (e) {
    console.log(e);
    console.log(e.name);
    }
}
Run Code Online (Sandbox Code Playgroud)

我在控制台中收到以下消息:

DOMException: "Permission denied to access property "document" on cross-origin object"
SecurityError
Run Code Online (Sandbox Code Playgroud)

小智 13

就我而言:Firefox 版本。98.0.2(64 位)转到about:config并更改标志有帮助: security.fileuri.strict_origin_policy=false

  • 谢谢你!我对“privacy.file_unique_origin”不再工作感到疯狂!另请注意,不需要重新启动,这是您今天需要切换的唯一设置,不再需要/支持“privacy.file_unique_origin”。 (2认同)

Kai*_*ido 8

您可以通过转到about:configurl,然后取消选中privacy.file_unique_origin布尔值来利用此限制。

但是请注意,这只会恢复为<68保护模式,这仅允许进行挖掘,即使此标志向下,您也无法提取../some_other_dir/foo.bar