问题标签 [cross-origin-embedder-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 投票
0 回答
75 浏览

sandbox - Chrome 扩展沙盒 iFrame 中的 SharedArrayBuffer

我试图SharedArrayBuffer通过设置一个跨域隔离的文档来使用。但是,由于它位于 Google Chrome 扩展程序中并且我需要 WebAssembly,因此我需要在沙盒页面中运行它。

我有一个沙盒页面,在 manifest.json 中定义为这样

而且我还使用 COOP 和 COEP 启用了跨域隔离。

除了使用这个sandbox.html脚本之外什么都不做:

然后我有一个outer.html嵌入sandbox.htmliFrame 的页面。

当我打开时outer.html,我收到消息“BAD am not crossOriginIso”,即sandbox.htmliFrame 内的文档不是跨域隔离的(我不能使用SharedArrayBuffer)。

有没有办法在内部文档被沙盒化的 iFrame 中使用清单 v3 在 Chrome 扩展中启用跨域隔离(通过manifest.json)。

也许更具体地说,如何featurePolicy.allowedFeatures()向沙盒 iFrame 添加更多内容(它是在 Chrome 扩展程序的沙盒中manifest.json,而不是sandbox属性)。

我注意到以下几点:

  • 没有iFrame直接打开sandbox.html,页面是跨域隔离的。
  • 删除该sandbox属性会manifest.json导致 iframe 内的文档被跨域隔离。
  • 在 iFrame 内执行document.featurePolicy.allowedFeatures()会提供非常小的功能列表(并且不包括cross-origin-isolated)。这个列表比sandbox.html直接打开时执行相同的命令要小很多。
0 投票
1 回答
72 浏览

reactjs - 新 SDK (v2) 中的 Cloudinary CORS

我正在使用cloudinary服务在我的反应应用程序中显示图像,方法是使用与TS一起使用的React SDK v2的新测试版。我正在使用文档中描述的功能,但作为回报我有

ERR_BLOCKED_BY_RESPONSE.NotSameOriginAfterDefaultedToSameOriginByCoep 200

这是我的代码:

我是 CORS 使用的新手,所以我可能遗漏了一些东西,但在新的 SDK 中,我找不到应该添加标题以允许 CORS 的任何地方。

有人能帮我吗?

0 投票
1 回答
839 浏览

node.js - 指定跨域资源策略以防止资源被阻止

我正在尝试访问我的电影 API,该 API 通过 React 应用程序返回包括电影海报图像在内的数据。正在从外部网站请求此图像。每次我向\movies端点发出请求时,图像都会被阻止,并且我会在控制台中收到以下消息

net::ERR_BLOCKED_BY_RESPONSE.NotSameOriginAfterDefaultedToSameOriginByCoep 200

在“网络”选项卡中查看请求时,我收到以下消息说启用跨域资源策略

我正在使用 CORS npm 模块,该模块以前用于解决我的 Access-Control-Allow-Origin 错误问题。我添加了一些额外的中间件来尝试按照说明添加标题。这是带有该代码的 app.js 服务器

应用程序.js

执行此操作后,控制台会抛出相同的错误,并且仍未设置跨域资源策略。我的方法或文件结构的方式有问题吗?

0 投票
0 回答
23 浏览

security - Cross Origin Embedder Policy unsafe-none 选项不会禁用 CORS 策略

我正在学习网络安全的 COOP 和 COEP 功能。此处的规范https://html.spec.whatwg.org/multipage/origin.html#coep表示带有 unsafe-none 指令的 COEP 将允许获取跨域资源,因此它不会被 CORS 协议阻止。我编写了一个小示例 index.html 文件,它尝试从远程获取图像文件,但即使我将跨域嵌入策略响应标头设置为“不安全”,它也会被阻止。

我在某个地方有什么误解吗?我希望在 COEP unsafe-none 设置的提取操作中禁用 CORS 协议。

0 投票
1 回答
63 浏览

http - CORP 使用 CSP 沙箱集阻止明显同源请求

想象一个有两个文档的站点:index.htmltest.jpg,都位于根目录。index.html有以下内容。

如果没有安全标头,这工作得很好。但是,使用这些标题index.html

这个标题在test.jpg

test.jpgChrome 98 将不再加载它。它net::ERR_BLOCKED_BY_RESPONSE.NotSameOrigin 200在控制台中报告。

添加以下标头index.html将导致图像也被 Firefox 97 阻止:

(我知道这是很多指令,但我试图将它们一分为二,但无法弄清楚。)

What is happening here? https://example.com and https://example.com/test.jpg are the same origin, aren't they? Explicitly navigating to https://example.com/index.html also blocks the loading of test.jpg. What is missing from my understanding of same-origin? Why is there a difference between Chrome and Firefox's handling? Why does adding CSP cause Firefox to start blocking the requests for test.jpg?

In case I missed something, here are the complete set of headers for each request (from cURL):