內容安全策略報告僅

HTTP Content-Security-Policy-Report-Only 響應頭允許 Web 開發者傳送 CSP 違規報告,以便透過監控(但不強制執行)其效果來試驗策略。這允許在測試期間快速捕獲和修復 CSP 違規。

Content-Security-Policy-Report-Only 的使用方式與 Content-Security-Policy 相同,但不會強制執行違規。必須指定 CSP report-to 指令才能傳送報告:如果不指定,操作將沒有任何效果。

違規報告使用 Reporting API 傳送到在 Reporting-Endpoints HTTP 響應頭中定義的端點,並使用 CSP report-to 指令進行選擇。

有關更多資訊,請參閱我們的 Content Security Policy (CSP) 指南。

注意:此標頭也可以與已棄用的 report-uri 指令一起使用(這將被 report-to 取代)。使用方法和產生的報告語法略有不同;有關更多詳細資訊,請參閱 report-uri 主題。

標頭型別 響應標頭
禁止的標頭名稱
此標頭在 <meta> 元素內部不受支援。

語法

http
Content-Security-Policy-Report-Only: <policy-directive>; ...; <policy-directive>; report-to <endpoint-name>

指令

Content-Security-Policy 標頭的指令也可以應用於 Content-Security-Policy-Report-Only,但 sandbox 指令除外,該指令將被忽略。

CSP report-to 指令應與該標頭一起使用,否則將無效。

示例

要使用 report-to 指令,您首先需要使用 Reporting-Endpoints HTTP 響應頭定義相應的端點。在下面的示例中,我們定義了一個名為 csp-endpoint 的單個端點。

http
Reporting-Endpoints: csp-endpoint="https://example.com/csp-reports"

然後,我們可以使用 report-toreport-uri 定義報告的目標,如下所示。請注意,此特定報告將在頁面以不安全的方式載入資源或從內聯程式碼載入資源時觸發。

http
Content-Security-Policy-Report-Only: default-src https:;
  report-uri /csp-report-url/;
  report-to csp-endpoint;

注意:report-to 指令優先於已棄用的 report-uri,但我們聲明瞭這兩個指令,因為 report-to 尚未獲得完全的跨瀏覽器支援。

規範

規範
Content Security Policy Level 3
# cspro-header

瀏覽器相容性

BCD 表格僅在瀏覽器中載入

另請參見