的 Content-Security-Policy 元数据使用什么值" /> <video src="blob:..."> 的 Content-Security-Policy 元数据使用什么值

2024-02-08

My https://my-site.com https://my-site.com网站有一些如下所示的 html:

<video src="blob:https://my-site.com/{some-guid}"></video>

在控制台中,我收到此错误:

拒绝从“blob:”加载媒体https://my-site.com/ https://my-site.com/{一些指导}' 因为它违反了以下内容安全策略指令: “媒体-src *”。

In my head我有这个:

<meta http-equiv="Content-Security-Policy" content="media-src * blob:" />

我缺少什么?我什至尝试过“捕获所有”(不是超级安全)值default-src * 'unsafe-inline' 'unsafe-eval',无济于事。

使用 Chrome。


事实上,该消息表示正在应用的 CSP 指令只是media-src *-代替media-src * blob:——似乎表明浏览器已经从Content-Security-Policy标题胜过更自由的政策meta元素。

因此,如果您的网站实际上已经提供了Content-Security-Policy标头,那么您需要更改其策略以使用更自由的media-src允许的指令blob:来源。

你不能覆盖更严格的Content-Security-Policy标头值具有更自由的值,指定为meta在文件中。看https://w3c.github.io/webappsec-csp/#multiple-policies https://w3c.github.io/webappsec-csp/#multiple-policies and https://w3c.github.io/webappsec-csp/#meta-element https://w3c.github.io/webappsec-csp/#meta-element:

注意:通过指定的策略meta元素将被强制执行 与任何其他对受保护资源有效的策略,无论 它们被指定的位置。实施多项措施的总体影响 §8.1 多个策略的效果中描述了策略。

8.1.多重政策效应

这 的行为XMLHttpRequest考虑到一个网站,可能看起来不清楚, 无论出于何种原因,传递了以下 HTTP 标头:

Content-Security-Policy: default-src 'self' http://example.com http://example.net;
                         connect-src 'none';
Content-Security-Policy: connect-src http://example.com/;
                         script-src http://example.com/

是否允许连接到 example.com?简短的答案是 不允许连接。

执行这两项政策意味着 潜在的连接必须完好无损地穿过两者。甚至 尽管第二个策略允许这种连接,但第一个策略 包含connect-src 'none',因此它的强制执行会阻止连接。

影响是在策略列表中添加额外的策略 强制执行只能进一步限制受保护者的能力 资源。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

随机推荐