Content-Security-Policy: frame-ancestors 指令

Baseline 已廣泛支援

此功能已非常成熟,可在許多裝置和瀏覽器版本上執行。自 2018 年 1 月起,它已在所有瀏覽器中可用。

HTTP Content-Security-Policy (CSP) frame-ancestors 指令指定了可以使用 <frame><iframe><object><embed> 嵌入頁面的有效父級。

將此指令設定為 'none' 類似於 X-Frame-Options: deny(在舊版瀏覽器中也支援)。

注意:frame-ancestors 允許你指定哪個父源可以嵌入頁面。這與 frame-src 不同,後者允許你指定頁面中的 iframe 可以從何處載入。

注意:frame-ancestors 指令會檢查每個祖先。如果任何祖先不匹配,則取消載入。因此,在使用巢狀幀時,所有祖先都應由葉幀的 frame-ancestors 指令允許。

CSP 版本 2
指令型別 導航指令
default-src 回退 否。不設定此項則允許任何內容。
此指令不支援在 <meta> 元素中使用。

語法

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

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

'none'

此資源可能不會被嵌入。單引號是強制性的。

<source-expression-list>

一個以空格分隔的源表示式值列表。如果嵌入者與任何給定源表示式匹配,則此資源可以被嵌入。對於此指令,以下源表示式值適用

注意:frame-ancestors 指令的語法類似於其他指令(例如 child-src)接受的源列表語法,但它不回退到 default-src 設定。宣告 default-src 'none' 的策略仍然允許任何人嵌入資源。

示例

http
Content-Security-Policy: frame-ancestors 'none';

Content-Security-Policy: frame-ancestors 'self' https://www.example.org;

Content-Security-Policy: frame-ancestors 'self' https://example.org https://example.com https://store.example.com;

規範

規範
內容安全策略級別 3
# directive-frame-ancestors

瀏覽器相容性

另見