内容安全策略(Content-Security-Policy):frame-src 指令

Baseline 已广泛支持

此功能已相当成熟,可在多种设备和浏览器版本上运行。自 ⁨2016 年 8 月⁩ 起,所有浏览器均已提供此功能。

HTTP Content-Security-Policy (CSP) frame-src 指令指定了使用 <frame><iframe> 等元素加载的嵌套浏览上下文的有效源。

注意: frame-src 允许你指定页面中的 iframe 可以从何处加载。这与 frame-ancestors 不同,后者允许你指定哪个父源可以嵌入页面。

CSP 版本 1
指令类型 获取指令
回退 如果此指令缺失,用户代理将查找 child-src 指令(该指令会回退到 default-src 指令)。

语法

http
Content-Security-Policy: frame-src 'none';
Content-Security-Policy: frame-src <source-expression-list>;

此指令可以具有以下值之一

'none'

不允许加载此类型的任何资源。单引号是强制性的。

<source-expression-list>

一个由源表达式值组成的空格分隔列表。如果资源类型与任何给定的源表达式匹配,则可以加载此类资源。对于此指令,以下源表达式值适用:

示例

违规情况

给定此 CSP 头

http
Content-Security-Policy: frame-src https://example.com/

以下 <iframe> 被阻止,无法加载

html
<iframe src="https://not-example.com/"></iframe>

规范

规范
内容安全策略级别 3
# 指令-frame-src

浏览器兼容性

另见