?
This document uses PHP Chinese website manual Release
HTTP Content-Security-Policy
(CSP)upgrade-insecure-requests
指令指示用戶代理將所有站點的不安全URL(通過HTTP提供的URL)視為已被替換為安全URL(通過HTTPS提供的URL)。此指令適用于需要重寫大量不安全的舊版URL的網(wǎng)站。
upgrade-insecure-requests
指令在之前被評估block-all-mixed-content
,如果被設(shè)置,后者實際上是沒有操作的。建議設(shè)置一個指令或另一個指令,但不能同時設(shè)置。
upgrade-insecure-requests
指令不會確保通過第三方網(wǎng)站上的鏈接訪問您的網(wǎng)站的用戶將升級到頂級導(dǎo)航的HTTPS,因此不會替代Strict-Transport-Security
(HSTS)標(biāo)頭,該標(biāo)頭仍應(yīng)設(shè)置適當(dāng)?shù)臉?biāo)頭max-age
以確保用戶不會受到SSL剝離攻擊。
Content-Security-Policy: upgrade-insecure-requests;
// headerContent-Security-Policy: upgrade-insecure-requests;// meta tag<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">
通過將上述標(biāo)頭設(shè)置在域example.com上并希望從HTTP遷移到HTTPS,非導(dǎo)航不安全資源請求會自動升級(第一方以及第三方請求)。
<img src="http://example.com/image.png"><img src="http://not-example.com/image.png">
這些 URL 將在請求發(fā)生之前被重寫,這意味著沒有不安全的請求會觸及網(wǎng)絡(luò)。請注意,如果請求的資源通過 HTTPS 實際上不可用,則該請求將失敗,而不會返回到 HTTP。
<img src="https://example.com/image.png"><img src="https://not-example.com/image.png">
導(dǎo)航升級到第三方資源會帶來更高的破損潛力,但這些升級并不會升級:
<a href="https://example.com/">Home</a><a href="http://not-example.com/">Home</a>
借助Content-Security-Policy-Report-Only
標(biāo)題和report-uri
指令,您可以設(shè)置強制策略和報告策略,如下所示:
Content-Security-Policy: upgrade-insecure-requests; default-src https: Content-Security-Policy-Report-Only: default-src https:; report-uri /endpoint
這樣,您仍會在安全網(wǎng)站上升級不安全的請求,但唯一的監(jiān)控策略被違反并向您的端點報告不安全的資源。
規(guī)范 | 狀態(tài) | 評論 |
---|---|---|
升級不安全的請求在該規(guī)范中定義了“ upgrade-insecure-requests ”。 | 候選推薦 | 初始定義。 |
特征 | Chrome | Firefox | Edge | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
基本支持 | 43 | 42.0 | (No)1 | (No) | 30 | (No) |
特征 | Android | Chrome for Android | Edge mobile | Firefox for Android | IE mobile | Opera Android | iOS Safari |
---|---|---|---|---|---|---|---|
基本支持 | ? | 43 | (No) | 42.0 | (No) | ? | (No) |