[36] 
[DFN[参照元ポリシー]]は、[[要求]]の [[fetch]] の際に用いる[F[[RUBY[[[参照元]]][リファラー]]]]の値 ([[URL]])
を決定する方法を指定するものです。

* 仕様書

[110] [DFN[[CITE[Referrer Policy]]]] は、[[参照元]]の [[URL]] の決定方法を規定した[[仕様書]]です。
実際の規定は [CITE[Fetch Standard]] と [CITE[HTML Standard]] にも分散しています。

[REFS[
- [30] [CITE@en[Referrer Policy]] ([TIME[2016-04-13 19:33:46 +09:00]] 版) <https://w3c.github.io/webappsec-referrer-policy/>
-- [44] [CITE@en[Referrer Policy]] ([TIME[2016-05-21 07:45:08 +09:00]]) <https://w3c.github.io/webappsec-referrer-policy/#referrer-policies>
-- [55] [CITE@en[Referrer Policy]] ([TIME[2016-05-21 07:45:08 +09:00]]) <https://w3c.github.io/webappsec-referrer-policy/#referrer-policy-header>
-- [60] [CITE@en[Referrer Policy]] ([TIME[2016-05-21 07:45:08 +09:00]]) <https://w3c.github.io/webappsec-referrer-policy/#parse-referrer-policy-from-header>
-- [70] [CITE@en[Referrer Policy]] ([TIME[2016-05-21 07:45:08 +09:00]]) <https://w3c.github.io/webappsec-referrer-policy/#determine-policy-for-token>
- [76] [CITE@en-US[Fetch Standard]] ([TIME[2016-05-24 18:42:15 +09:00]]) <https://fetch.spec.whatwg.org/#concept-request-referrer>
- [78] [CITE@en-US[Fetch Standard]] ([TIME[2016-05-24 18:42:15 +09:00]]) <https://fetch.spec.whatwg.org/#concept-request-referrer-policy>
- [80] [CITE@en-US[Fetch Standard]] ([TIME[2016-05-24 18:42:15 +09:00]]) <https://fetch.spec.whatwg.org/#concept-referrer-policy>
- [91] [CITE@en-GB-x-hixie[HTML Standard]] ([TIME[2016-05-24 17:09:37 +09:00]]) <https://html.spec.whatwg.org/>
-- [85] [CITE@en-GB-x-hixie[HTML Standard]] ([TIME[2016-05-24 17:09:37 +09:00]]) <https://html.spec.whatwg.org/#referrer-policy-attribute>
-- [87] [CITE@en-GB-x-hixie[HTML Standard]] ([TIME[2016-05-24 17:09:37 +09:00]]) <https://html.spec.whatwg.org/#concept-document-referrer-policy>
-- [90] [CITE@en-GB-x-hixie[HTML Standard]] ([TIME[2016-05-24 17:09:37 +09:00]]) <https://html.spec.whatwg.org/#attr-link-referrerpolicy>
-- [92] [CITE@en-GB-x-hixie[HTML Standard]] ([TIME[2016-05-24 17:09:37 +09:00]]) <https://html.spec.whatwg.org/#dom-link-referrerpolicy>
-- [99] [CITE@en-GB-x-hixie[HTML Standard]] ([TIME[2016-05-24 17:09:37 +09:00]]) <https://html.spec.whatwg.org/#the-a-element>
-- [101] [CITE@en-GB-x-hixie[HTML Standard]] ([TIME[2016-05-24 17:09:37 +09:00]]) <https://html.spec.whatwg.org/#attr-hyperlink-referrerpolicy>
-- [102] [CITE@en-GB-x-hixie[HTML Standard]] ([TIME[2016-05-24 17:09:37 +09:00]]) <https://html.spec.whatwg.org/#the-img-element>
-- [103] [CITE@en-GB-x-hixie[HTML Standard]] ([TIME[2016-05-24 17:09:37 +09:00]]) <https://html.spec.whatwg.org/#the-iframe-element>
-- [104] [CITE@en-GB-x-hixie[HTML Standard]] ([TIME[2016-05-24 17:09:37 +09:00]]) <https://html.spec.whatwg.org/#the-area-element>
-- [105] [CITE@en-GB-x-hixie[HTML Standard]] ([TIME[2016-05-24 17:09:37 +09:00]]) <https://html.spec.whatwg.org/#environment-settings-object>
-- [106] [CITE@en-GB-x-hixie[HTML Standard]] ([TIME[2016-05-24 17:09:37 +09:00]]) <https://html.spec.whatwg.org/#concept-workerglobalscope-referrer-policy>
- [149] [CITE@en[Service Workers Nightly]] ([TIME[2017-02-16 20:10:49 +09:00]]) <https://w3c.github.io/ServiceWorker/#dfn-referrer-policy>
]REFS]

* 意味

[42] [DFN[[RUBYB[参照元ポリシー]@en[referrer policy]]]]は、
[[fetch]] の際に [CODE(HTTP)@en[Referer:]] [[ヘッダー]]の値を決める[[アルゴリズム]]の動作を指定するものです
[SRC[>>30]]。

[37] 次のような理由から、[[著者]]が[[参照元]]を制御したいことがあります。
[[参照元ポリシー]]はそのような場合に有用です。
[FIG(list)[
- [38] [[SNS]] の [[URL]] に当該 [[URL]] の[[著者]]の識別子が含まれているような場合に、
[[プライバシー]]保護のため、その漏洩を防ぎたい。 [SRC[>>30]]
- [40] [[URL]] に含まれる[[セッション識別子]]や [[capability URL]] の漏洩を防ぎたい。 [SRC[>>30]]
- [39] 具体的な [[URL]] は知らせたくないが、当該 [[SNS]] 
からリンクされていることはリンク先に知らせたい。 [SRC[>>30]]
- [41] [[HTTPS]] の[[ブログ]]から、 [[素のHTTP]]の[[ブログ]]へと[[リンク]]し、
[[トラックバックリンク]]を受信したい。 [SRC[>>30]]
- [119] [[開発サーバー]]内のページに外部ページへの[[リンク]]があるが、
[[参照元]]として[[開発サーバー]]の [[URL]] を漏洩させたくない。
]FIG]

* 値

[81] [[参照元ポリシー]]は、次の値です。

[FIG(table)[
:value: 値
:same: [[同じ起源]]の場合の[[参照元]]
:cross: [[異なる起源]] (非 downgrade) の場合の[[参照元]]
:down: [[異なる起源]] (downgrade) の場合の[[参照元]]
:http:
[82] [CODE(HTTP)@en[Referrer-Policy:]] [[ヘッダー]]の[[リスト][リスト (HTTP)]]要素
:meta: [CODE(HTML)[<meta name=referrer>]]
:idl: [[列挙型]] [DFN[[CODE[ReferrerPolicy]]]] [SRC[>>44]]
:attr: 
[86] [DFN[[RUBYB[[[参照元ポリシー属性]]]@en[referrer policy attribute]]]]である[[列挙型属性]]
[SRC[>>85]]
:rel: [[リンク型]]と [CODE[window.open]]

:value: (適用箇所)
:cross: [CODE(URI)@en[https:]] → [CODE(URI)@en[http:]] 以外
:down: [CODE(URI)@en[https:]] → [CODE(URI)@en[http:]]
:idl: [CODE(DOMi)@en[Request]] [[インターフェイス]]
[CODE(DOMa)@en[referrerPolicy]] [[IDL属性]]
:attr: [CODE(HTMLa)@en[referrerpolicy][referrerpolicy=""]]
[[属性]]
([CODE(HTMLe)@en[a]], [CODE(HTMLe)@en[area]],
[CODE(HTMLe)@en[img]], [CODE(HTMLe)@en[iframe]],
[CODE(HTMLe)@en[link]])
:rel: [CODE(HTMLa)@en[rel]] [[属性]]

:value: ([[大文字]]と[[小文字]]の区別)
:http: [[ASCII大文字・小文字不区別]]
:meta: [[ASCII大文字・小文字不区別]]
:idl: 区別あり
:attr: [[ASCII大文字・小文字不区別]]
:rel: [[ASCII大文字・小文字不区別]]

:value:
[45] [DFN[[CODE[no-referrer]]]]
:same: なし [WEAK[[SRC[>>44]]]]
:cross: なし [WEAK[[SRC[>>44]]]]
:down: なし [WEAK[[SRC[>>44]]]]
:http: ○
:idl: ○
:meta: ○
:attr: ○
:rel: [CODE[noreferrer]]

:value: [DFN[[CODE[never][no-referrer]]]]
:same: なし [WEAK[[SRC[>>44]]]]
:cross: なし [WEAK[[SRC[>>44]]]]
:down: なし [WEAK[[SRC[>>44]]]]
:http: ×
:idl: ×
:meta: 禁止 [SRC[>>91]]
:attr: × [WEAK[(非妥当)]]

:value:
[46] [DFN[[CODE[no-referrer-when-downgrade]]]]
:same: URL全体 [WEAK[[SRC[>>44]]]]
:cross: URL全体 [WEAK[[SRC[>>44]]]]
:down: なし [WEAK[[SRC[>>44]]]]
:http: ○
:idl: ○
:meta: ○
:attr: ○

:value: [DFN[[CODE[default][no-referrer-when-downgrade]]]]
:same: URL全体
:cross: URL全体
:down: なし
:http: ×
:idl: ×
:meta: 禁止 [SRC[>>91]]
:attr: × [WEAK[(非妥当)]]

:value:
[48] [DFN[[CODE[same-origin]]]]
:same: URL全体 [WEAK[[SRC[>>44]]]]
:cross: なし [WEAK[[SRC[>>44]]]]
:down: なし [WEAK[[SRC[>>44]]]]
:http: ○
:idl: ○
:meta: ○
:attr: ○

:value:
[49] [DFN[[CODE[origin]]]]
:same: [[起源]]のみ [WEAK[[SRC[>>44]]]]
:cross: [[起源]]のみ [WEAK[[SRC[>>44]]]]
:down: [[起源]]のみ [WEAK[[SRC[>>44]]]]
:http: ○
:idl: ○
:meta: ○
:attr: ○

:value: [DFN[[CODE[strict-origin]]]]
:same: [[起源]]のみ [WEAK[[SRC[>>44]]]]
:cross: [[起源]]のみ [WEAK[[SRC[>>44]]]]
:down: なし [WEAK[[SRC[>>44]]]]
:http: ○
:idl: ○
:meta: ○
:attr: ○

:value:
[50] [DFN[[CODE[origin-when-cross-origin]]]]
:same: URL全体 [WEAK[[SRC[>>44]]]]
:cross: [[起源]]のみ [WEAK[[SRC[>>44]]]]
:down: [[起源]]のみ [WEAK[[SRC[>>44]]]]
:http: ○
:idl: ○
:meta: ○
:attr: ○

:value: [DFN[[CODE[origin-when-crossorigin]]]]
:same: URL全体
:cross: [[起源]]のみ
:down: [[起源]]のみ
:http: ×
:idl: ×
:meta: 禁止 [SRC[>>91]]
:attr: × [WEAK[(非妥当)]]

:value: [DFN[[CODE[strict-origin-when-cross-origin]]]]
:same: URL全体 [WEAK[[SRC[>>44]]]]
:cross: [[起源]]のみ [WEAK[[SRC[>>44]]]]
:down: なし [WEAK[[SRC[>>44]]]]
:http: ○
:idl: ○
:meta: ○
:attr: ○

:value:
[51] [DFN[[CODE[unsafe-url]]]]
:same: URL全体 [WEAK[[SRC[>>44]]]]
:cross: URL全体 [WEAK[[SRC[>>44]]]]
:down: URL全体 [WEAK[[SRC[>>44]]]]
:http: ○
:idl: ○
:meta: ○
:attr: ○

:value: [DFN[[CODE[always][unsafe-url]]]]
:same: URL全体
:cross: URL全体
:down: URL全体
:http: ×
:idl: ×
:meta: 禁止 [SRC[>>91]]
:attr: × [WEAK[(非妥当)]]

:value: [52] [[空文字列]]
:http: ×
:idl: ○
:meta: ×
:attr: ○

:value: その他
:http: ×
:idl: ×
:meta: ×
:attr: × [WEAK[(非妥当)]]

]FIG]

[77] [CODE[no-referrer]] は、[[要求]]の[F[参照元]]において、
[[参照元]]を送らないことを表すために ([[URL]] のかわりの値として) 使われることもあります。

[72] [CODE[no-referrer-when-downgrade]] は、
指定がない場合の[[既定値]]としても使われます [SRC[>>44]]。

[74] [[空文字列]]は、その文脈で値が明示されない時に使うべき値に従うことを表します。
そのような値が無い時は、 [CODE[no-referrer-when-downgrade]] を表します。 [SRC[>>44]]
[[参照元ポリシー属性]]の[[非妥当値既定値]]と[[欠値既定値]]としても使われます [SRC[>>85]]。

[HISTORY[
[71] 指定された値[VAR[字句]]の解釈は、 [DFN[Determine [VAR[token]]’s Policy]]、
すなわち[VAR[字句]]を[[ASCII小文字に変換]]した結果がいずれかの値と一致するかを調べることによります [SRC[>>70]]。
廃止された3つの値はそれぞれの新しい値に、[[空文字列]]は [CODE[no-referrer]]
へと正規化されます [SRC[>>70]]。
いずれとも一致しなければ、[[空文字列]]となります [SRC[>>70]]。

;; [47] この解釈は、各文脈に応じた処理の後で実行されます。例えば [[HTTP]]
[CODE(HTTP)@en[Referrer-Policy:]] [[ヘッダー]]では、まず [[HTTPヘッダー]]としての[[構文解析]]を行うので、
[[空文字列]]や廃止された3つの値はその時点でエラーとなります。

[136] この規定は[TIME[2016年8月][2016-08]]に廃止され、それぞれの文脈ごとの処理方法が規定されるようになりました。
]HISTORY]

* 文脈

[53] [[著者]]は、[[参照元ポリシー]]を次の方法で明示できます。
[FIG(list middle)[
- [CODE(HTTP)@en[Referrer-Policy:]] [[HTTPヘッダー]]
- [CODE(HTML)@en[<meta name=referrer>]]
- [CODE(HTMLa)@en[referrerpolicy]] [[属性]]
- [CODE(HTML)@en[rel=noreferrer]]
]FIG]

[HISTORY[
[54] 一時、[[CSP]] の[[指令]]としても指定できましたが、[[廃止]]されました。
]HISTORY]

[69] [[HTTPリダイレクト]]では、[[応答]]の [CODE(HTTP)@en[Referrer-Policy:]]
[[ヘッダー]]の値が (あれば) [[リダイレクト]]先の[[要求]]の[[参照元]]の決定に使われます。

;; [[HTTPリダイレクト]]参照。

[43] [[環境設定群オブジェクト]]は、[DFN[[F[[RUBYB[[[参照元ポリシー]]]@en[referrer policy]]]]]]を持ちます。
これは、当該[[環境設定群オブジェクト]]を[[要求]]の[F[クライアント][要求クライアント]]とするときに、
原則として用いられるものです。 [SRC[>>105, >>30]]

[88] [[文書]]は、[DFN[[F[[RUBYB[[[参照元ポリシー]]]@en[referrer policy]]]]]]を持ちます。
[[既定値]]は、[[空文字列]]です。 [SRC[>>87]]

[107] [CODE(DOMi)@en[WorkerGlobalScope]] は、[DFN[[F[[RUBYB[[[参照元ポリシー]]]@en[referrer policy]]]]]]を持ちます。
[[既定値]]は、[[空文字列]]です。 [SRC[>>106]]

[150] [[サービスワーカー]]の[F[スクリプト資源]]は、
[DFN[[F[[RUBYB[[[参照元ポリシー]]]@en[referrer policy]]]]]]を持ちます。
[[既定値]]は、[[空文字列]]です。 [SRC[>>149]]

[167] [[スクリプトfetchオプション群]]は、
[DFN[[F[[RUBYB[[[参照元ポリシー]]]@en[referrer policy]]]]]]を持ちます
[SRC[[[HTML Standard]]]]。
[[スクリプトのfetch]]で使われます。

[79] [[要求]]は、[DFN[[F[[RUBYB[[[参照元ポリシー]]]@en[referrer policy]]]]]]を持ちます。
値は[[参照元ポリシー]]、[[既定値]]は[[空文字列]]です。
これは[[環境設定群オブジェクト]]の[F[参照元ポリシー]]を上書きしたいときに使います。 [SRC[>>78]]

* 適用対象

[174] 
[[HTTPヘッダー]]
[CODE[Referer:]]、
[[HTTPヘッダー]]
[CODE[Origin:]]、
[[DOM]]
[CODE[document.referrer]] 
に適用されます。

[HISTORY[
[13] かつては [[WebSocket]] に適用されるのかは明確になっていませんでした。
現在は [[WebSocket]] が [[Fetch]] 経由で処理される規定となっているため、
[[WebSocket]] にも適用されることが明確になっています。
]HISTORY]

* [CODE(HTTP)@en[Referrer-Policy:]] ヘッダー

[56] [CODE(HTTP)@en[Referrer-Policy:]] [[HTTPヘッダー]]は、
当該[[資源]]から作成される[[要求]]や[[閲覧文脈]]における[[参照元ポリシー]]を指定するものです
[SRC[>>55]]。

;; [144] [CODE[Refe'''r'''er:]] [[ヘッダー]]とは違って、 r が2つ入っています。

[57] [[ヘッダー値]]は、1つ[[以上]]の値の[[リスト][リスト (HTTP)]]です [SRC[>>55]]。

[FIG(railroad)[
= 値
= *
== [[OWS]]
== [CODE[,]]
== [[OWS]]
== 値
]FIG]

[58] 各値は、[[参照元ポリシー]]を指定するもの
(歴史的な値以外) で、 [[ASCII大文字・小文字不区別]]です
[SRC[>>55]]。

[68] 値を複数指定すると、[[Webブラウザー]]は、対応している最後のものを使います。
新しい値が追加されて未対応の [[Webブラウザー]]が存在する時は、
新しい値を後の方に指定すると、新旧どちらの [[Webブラウザー]]にも適当な指定を与えられます。

;; [[CSS]] などと同じです。

[59] [[構文解析]]は、[VAR[応答]]について次
([DFN[Parse a referrer policy from a [CODE[Referrer-Policy]] header]])
のようにします [SRC[>>60]]。

[FIG(steps)[
= [75] [VAR[ヘッダー値]]を、[VAR[応答]]の[F[ヘッダーリスト]]の
[CODE[Referrer-Policy:]] [[ヘッダー]]すべての値を [[combine]] した結果に設定します。
= [151] [VAR[リスト]]を、[VAR[ヘッダー値]]を [CODE[,]] で分割した結果に設定します。
= [156] [VAR[ポリシー]]を、[[空リスト]]に設定します。
= [61] [VAR[リスト]]の各[VAR[項目]]について、
== [152] [VAR[値]]を、[VAR[項目]]の先頭と末尾から [CODE[OWS]] をすべて除去した結果に設定します。
== [153] [VAR[値]]に[[ASCII英字]]でも [CODE[-]] でもない[[バイト]]が含まれていれば、
=== [154] [[空文字列]]を返し、ここで停止します。
== [155] [VAR[値]]が[[参照元ポリシー]]のいずれか (廃止されていないもの。[[バイト大文字・小文字不区別]]。) と等しく、
[VAR[値]]が[[空文字列]]で''ない''なら、
=== [157] [VAR[値]]と等しい[[参照元ポリシー]]を、[VAR[リスト]]に追加します。
= [62] [VAR[ポリシー]]が空なら、
== [66] [[空文字列]]を返します。
= [67] それ以外なら、
== [64] [VAR[ポリシー]]の最後の要素を返します。
]FIG]

;; [63] [CODE(HTML)@en[<meta name=referrer>]] の[[廃止]]された値は、
[CODE(HTTP)@en[Referrer-Policy:]] [[ヘッダー]]では認識されず、無視されます。

* [CODE(HTMLa)@en[referrerpolicy]] 内容属性、[CODE(DOMa)@en[referrerPolicy]] IDL属性

[89] 次の[[要素]]と[[インターフェイス]]に [DFN[[CODE(HTMLa)@en[referrerpolicy]]]]
[[内容属性]]と [DFN[[CODE(DOMa)@en[referrerPolicy]]]] [[IDL属性]]があります。

[FIG(list)[
- [CODE(HTMLe)@en[link]] [[要素]] [SRC[>>90]] / [CODE(ODMi)@en[HTMLLinkElement]]
[[インターフェイス]] [SRC[>>92]]
- [CODE(HTMLe)@en[a]] [[要素]] [SRC[>>99]] / [CODE(ODMi)@en[HTMLAnchorElement]]
[[インターフェイス]] [SRC[>>99, >>101]]
- [CODE(HTMLe)@en[area]] [[要素]] [SRC[>>104]] / [CODE(ODMi)@en[HTMLAreaElement]]
[[インターフェイス]] [SRC[>>104, >>101]]
- [CODE(HTMLe)@en[img]] [[要素]] [SRC[>>102]] / [CODE(ODMi)@en[HTMLImageElement]]
[[インターフェイス]] [SRC[>>102]]
- [CODE(HTMLe)@en[iframe]] [[要素]] [SRC[>>103]] / [CODE(ODMi)@en[HTMLIFrameElement]]
[[インターフェイス]] [SRC[>>103]]
- [CODE[script]] [[要素]] / [CODE[HTMLScriptElement]] [[インターフェイス]]
]FIG]

[108] これらの[[内容属性]]は、[[参照元ポリシー属性]]です [SRC[>>91]]。
つまり[[参照元ポリシー]]の値のいずれかを指定できます。
[[ASCII大文字・小文字不区別]]です。省略時の[[既定値]]は、[[空文字列]]です。

[109] [[IDL属性]]は、 [CODE(HTMLa)@en[referrerpolicy]] [[内容属性]]を[[反映]]しなければ[MUST[なりません]]。
ただし[[既知値のみに限定]]されます。 [SRC[>>91]]

[100] [CODE(HTMLe)@en[a]] [[要素]]と [CODE(HTMLe)@en[area]]
[[要素]]では、 [CODE(HTMLa)@en[href]]
[[属性]]がない場合、指定しては[MUST[なりません]] [SRC[>>99, >>104]]。

* 歴史

[1] [CITE@en[GoogleのHTTPS版でRefererがoriginだけになりそう (meta referrer="origin") - fragmentary]]
( ([TIME[2012-03-25 11:14:22 +09:00]] 版))
<http://myakura.hatenablog.com/entry/2012/03/20/191406>

[2] [CITE[HTML - Referrer を制御する - Qiita]]
( ([TIME[2014-06-09 09:11:02 +09:00]] 版))
<http://qiita.com/wakaba@github/items/707d72f97f2862cd8000>

[3] [CITE@en[Bug 22675 – Features to control the "Referer" header]]
( ([TIME[2014-06-09 09:12:19 +09:00]] 版))
<https://www.w3.org/Bugs/Public/show_bug.cgi?id=22675>

[4] [CITE@en[Meta referrer - WHATWG Wiki]]
( ([TIME[2013-12-18 19:23:27 +09:00]] 版))
<http://wiki.whatwg.org/wiki/Meta_referrer>

[5] [CITE@en[Bug 26058 – "noreferrer" support in Fetch.]]
( ([TIME[2014-06-13 15:07:09 +09:00]] 版))
<https://www.w3.org/Bugs/Public/show_bug.cgi?id=26058>

[6] [CITE@en[Referrer Policy]]
( ([TIME[2014-06-12 14:53:39 +09:00]] 版))
<https://w3c.github.io/webappsec/specs/referrer-policy/>

[7] [CITE[REFERRER: Defining <meta> delivery. · 1475cfd · w3c/webappsec]]
( ([TIME[2014-06-13 15:13:33 +09:00]] 版))
<https://github.com/w3c/webappsec/commit/1475cfd0d1ba2e61c4f0bb13fa8ec1bb8f353c62>

[8] [CITE@en[REFERRER/CSP2/CSP3: Move 'referrer' to the Referrer Policy spec. · d8fee06 · w3c/webappsec]]
([TIME[2015-02-08 11:36:28 +09:00]] 版)
<https://github.com/w3c/webappsec/commit/d8fee06f18d96ccd7cb6e8cbdf144878560459d5>

[9] [CITE@en[Re: CfC: Transition CSP2 to CR.]]
([[Mike West]] 著, [TIME[2015-02-07 16:15:36 +09:00]] 版)
<https://lists.w3.org/Archives/Public/public-webappsec/2015Feb/0121.html>

[10] [CITE@en[Re: referrer spec and backwards compatibility]]
([[Mike West]] 著, [TIME[2015-02-09 17:51:06 +09:00]] 版)
<https://lists.w3.org/Archives/Public/public-webappsec/2015Feb/0154.html>

[11] [CITE@en[REFERRER: Drop draconian conflict/typo handling. · 45b449e · w3c/webappsec]]
([TIME[2015-02-11 16:39:16 +09:00]] 版)
<https://github.com/w3c/webappsec/commit/45b449e610e5c8b6d893067d6be15bcccf384b5d>

- [12] [CITE@en[Referrer Policy]] ([TIME[2015-05-17 18:30:14 +09:00]] 版) <https://w3c.github.io/webappsec/specs/referrer-policy/>

[14] [CITE@en[Provide an API for referrer and referrer policies (both at Fetch and … · whatwg/fetch@3a21ed3]]
([TIME[2015-07-18 11:41:38 +09:00]] 版)
<https://github.com/whatwg/fetch/commit/3a21ed3cec04cbe75a0704ed14b7b2fb91837b64>

[15] [CITE@en[22675 – Features to control the "Referer" header]]
([TIME[2015-08-08 11:44:36 +09:00]] 版)
<https://www.w3.org/Bugs/Public/show_bug.cgi?id=22675>

[16] [CITE@en[24613 – Why wouldn't referrer for about:blank be based on the origin it inherits?]]
([TIME[2015-09-18 17:35:00 +09:00]] 版)
<https://www.w3.org/Bugs/Public/show_bug.cgi?id=24613#c27>

[17] [CITE@en[Integrate Fetch into HTML · whatwg/html@7c5555a]]
([TIME[2015-09-18 18:50:44 +09:00]] 版)
<https://github.com/whatwg/html/commit/7c5555a16f2920c02244c10756bb2f1a11e87a22>

[18] [CITE@en[Referrer Policy]]
([TIME[2015-10-01 19:48:32 +09:00]] 版)
<https://w3c.github.io/webappsec-referrer-policy/>

[19] [CITE@en[w3c/webappsec-referrer-policy]]
([TIME[2015-10-06 23:23:12 +09:00]] 版)
<https://github.com/w3c/webappsec-referrer-policy>

[20] [CITE@en[Move `referrer` from CSP to some other header.]]
([[Mike West]] 著, [TIME[2015-10-09 22:45:19 +09:00]] 版)
<https://lists.w3.org/Archives/Public/public-webappsec/2015Oct/0043.html>

[FIG(quote)[
[FIGCAPTION[
[21] [CITE@en[Creating a 'Deploy to Heroku' Button | Heroku Dev Center]]
([TIME[2015-10-25 09:12:23 +09:00]] 版)
<https://devcenter.heroku.com/articles/heroku-button>
]FIGCAPTION]

> GitHub does not send a referer header for private repos

]FIG]

[22] [CITE@en[Yay, Emily. · w3c/webappsec-referrer-policy@74bde1b]]
([TIME[2015-11-12 11:39:26 +09:00]] 版)
<https://github.com/w3c/webappsec-referrer-policy/commit/74bde1b77bfc11ea669019dcbad6c9c79b399714>

[23] [CITE@en[Merge pull request #7 from estark37/issue-4 · w3c/webappsec-referrer-policy@e6f81e3]]
([TIME[2015-11-17 16:33:46 +09:00]] 版)
<https://github.com/w3c/webappsec-referrer-policy/commit/e6f81e37b057fcf2ea32388f84ae789aa32c2315>

[24] [CITE@en[Revert changes to content attribute spelling, and fix attribute descr… · w3c/webappsec-referrer-policy@d232b6d]]
([TIME[2015-11-20 18:44:43 +09:00]] 版)
<https://github.com/w3c/webappsec-referrer-policy/commit/d232b6d457504d29379f7f83ec737d92ecc42c6f>

[25] [CITE@en[Merge pull request #8 from jeisinger/referrerPolicy-idl · w3c/webappsec-referrer-policy@77be4ed]]
([TIME[2015-11-20 18:47:06 +09:00]] 版)
<https://github.com/w3c/webappsec-referrer-policy/commit/77be4edd64deb158b90662cf449ee7d0a9abd731>

[26] [CITE@en[specify empty directive == No-Referrer · w3c/webappsec-referrer-policy@387e875]]
([TIME[2015-11-20 18:47:31 +09:00]] 版)
<https://github.com/w3c/webappsec-referrer-policy/commit/387e8754c0b114a094eecc7cfddb1fcba81ab491>

[27] [CITE@en[Modify referrer algorithm to use referrerpolicy attribute if present · w3c/webappsec-referrer-policy@6a92457]]
([TIME[2015-11-20 18:47:44 +09:00]] 版)
<https://github.com/w3c/webappsec-referrer-policy/commit/6a9245711dc9da1af7d5e59a33c6cb34c4302393>

[28] [CITE@en[Merge pull request #14 from estark37/referrer-header · w3c/webappsec-referrer-policy@cdc809b]]
([TIME[2015-12-18 18:08:22 +09:00]] 版)
<https://github.com/w3c/webappsec-referrer-policy/commit/cdc809ba5be73dec0b56298e09722ddb9cd8a89a>

[29] [CITE@en[Update request's referrer policy when fetching · whatwg/fetch@2812f6a]]
([TIME[2016-04-15 22:32:18 +09:00]] 版)
<https://github.com/whatwg/fetch/commit/2812f6aa873968002215b284e05d01715560400b>

[31] [CITE@en[965727 – Implement CSP 1.1 referrer directive]]
([TIME[2016-04-19 13:54:03 +09:00]] 版)
<https://bugzilla.mozilla.org/show_bug.cgi?id=965727>

[32] [CITE@en[Referrer policy: rename "origin-only" to "origin" · whatwg/fetch@0edf4a3]]
([TIME[2016-04-19 15:04:58 +09:00]] 版)
<https://github.com/whatwg/fetch/commit/0edf4a3d5fb96db52b8a7bb32bea55c1de6540cc>

[33] [CITE@en[Rewrite Fetch integration, especially around redirects · w3c/webappsec-referrer-policy@4d227ee]]
([TIME[2016-05-01 13:44:09 +09:00]] 版)
<https://github.com/w3c/webappsec-referrer-policy/commit/4d227ee81961b21913915632614039f076200961>

[34] [CITE@en[Move to string-named referrer policies]]
( ([[domenic]]著, [TIME[2016-05-05 05:06:19 +09:00]]))
<https://github.com/w3c/webappsec-referrer-policy/commit/718658acd2150f50dcd006508f990e266e90ce9e>

[35] [CITE@en["origin", not "origin-only"]]
( ([[domenic]]著, [TIME[2016-05-05 05:14:00 +09:00]]))
<https://github.com/w3c/webappsec-referrer-policy/commit/ae3e8933125caa5f39eeadff235eeee49ac12ee1>

[83] [CITE@en[Introduce a "Same-Origin Only" policy state]]
( ([[fmarier]]著, [TIME[2016-01-19 11:27:15 +09:00]]))
<https://github.com/w3c/webappsec-referrer-policy/commit/894da98efed842073d52fe0b0f7eee4c9389e1ff>

** [CODE(HTMLa)@en[referrerpolicy]] 属性

[93] [CITE@en[resolve the differences between noreferrer and referrerpolicy · w3c/webappsec-referrer-policy@dbe6b0e]]
([TIME[2015-10-29 12:42:57 +09:00]] 版)
<https://github.com/w3c/webappsec-referrer-policy/commit/dbe6b0e14d573f4047378f17dcfb73d0f73dfd6a>

[94] [CITE@en[Merge pull request #22 from estark37/link-attr · w3c/webappsec-referrer-policy@a52cc62]]
([TIME[2016-03-16 14:38:41 +09:00]] 版)
<https://github.com/w3c/webappsec-referrer-policy/commit/a52cc624852b77b63cb18ad79d4a2a67255fb9d5>

[95] [CITE@en[Clarify that modifying img.referrerPolicy is not a relevant mutation · w3c/webappsec-referrer-policy@a2ccead]]
([TIME[2016-04-23 16:32:40 +09:00]] 版)
<https://github.com/w3c/webappsec-referrer-policy/commit/a2ccead66e3a926f9f84c06e0dcae18f128463aa>

[96] [CITE@en[It actually is a relevant mutation · w3c/webappsec-referrer-policy@da96d09]]
([TIME[2016-04-23 16:33:28 +09:00]] 版)
<https://github.com/w3c/webappsec-referrer-policy/commit/da96d09383a14b5963d103c1a17368aefb0af743>

[97] [CITE@en[revert to *not* relevant mutation · w3c/webappsec-referrer-policy@e84ead9]]
([TIME[2016-04-23 16:34:31 +09:00]] 版)
<https://github.com/w3c/webappsec-referrer-policy/commit/e84ead9f4208fcc3ba3703aa9d70da4f54005f14>

[98] [CITE@en[Merge pull request #35 from jeisinger/image · w3c/webappsec-referrer-policy@c83d3c0]]
([TIME[2016-04-23 16:35:23 +09:00]] 版)
<https://github.com/w3c/webappsec-referrer-policy/commit/c83d3c05dc3408663749133504b82f8221074d73>

[111] [CITE@en[Integrate with the Referrer Policy spec, part 1 of n]]
( ([[domenic]]著, [TIME[2016-05-05 23:01:42 +09:00]]))
<https://github.com/whatwg/html/commit/6a7318072f340ad45229df171245d70d8621c2fe>

[112] [CITE@en[Integrate with the Referrer Policy spec, part 2 of n]]
( ([[domenic]]著, [TIME[2016-05-18 01:52:35 +09:00]]))
<https://github.com/whatwg/html/commit/176e74243c649b709b9959b7d08b327290c2f403>

[113] [CITE@en[Integrate with HTML, part 2 of n (#49)]]
( ([[domenic]]著, [TIME[2016-05-21 02:48:12 +09:00]]))
<https://github.com/w3c/webappsec-referrer-policy/commit/df68c16003b7f89bbaafe44d8756720889f9d64a>

[73] [CITE@en[Introduce a "Same-Origin Only" policy state]]
( ([[fmarier]]著, [TIME[2016-01-19 11:27:15 +09:00]]))
<https://github.com/w3c/webappsec-referrer-policy/commit/894da98efed842073d52fe0b0f7eee4c9389e1ff>

[117] [CITE@en[Referrer Policy]]
( ([TIME[2016-06-02 01:41:15 +09:00]]))
<https://www.w3.org/TR/2016/WD-referrer-policy-20160601/>

[118] [CITE@en[Add strict-origin and strict-origin-when-cross-origin policy states (…]]
([[@estark37]]著, [TIME[2016-07-03 01:46:36 +09:00]])
<https://github.com/w3c/webappsec-referrer-policy/commit/01e48049982c48c8178202f34572e4c00dc8ab7b>

[84] [CITE@en[Referrer Policy issues + Chrome implementation status]]
([[Emily Stark (Dunn)]]著, [TIME[2016-07-14 06:35:13 +09:00]])
<https://lists.w3.org/Archives/Public/public-webappsec/2016Jul/0018.html>

[114] [CITE@en[Issue 595099 - chromium - Implement HTMLLinkElement referrerpolicy attribute - Monorail]]
([TIME[2016-07-14 11:42:01 +09:00]])
<https://bugs.chromium.org/p/chromium/issues/detail?id=595099>

[115] [CITE@en[Issue 627968 - chromium - Implement new referrer-policy states - Monorail]]
([TIME[2016-07-14 11:42:13 +09:00]])
<https://bugs.chromium.org/p/chromium/issues/detail?id=627968>

[116] [CITE@en[Update Integration with Fetch section (#60)]]
([[estark37]]著, [TIME[2016-07-16 03:39:36 +09:00]])
<https://github.com/w3c/webappsec-referrer-policy/commit/e5d485b84b6b46422dd69290f47c150a5ad09680>

[120] [CITE@en[Fix referrer calculation to not refer to "API referrer source" (#58)]]
([[domenic]]著, [TIME[2016-07-16 03:37:18 +09:00]])
<https://github.com/w3c/webappsec-referrer-policy/commit/2d78da2dba8f7ca75c5a0aef8db4ceeae59e0074>

[121] [CITE@en[Call out to Referrer Policy to set policy on redirect]]
([[estark37]]著, [TIME[2016-07-16 02:22:13 +09:00]])
<https://github.com/whatwg/fetch/commit/a8f1cd5ae2d080ee4e1e8e02b68e8ec6ae2c2833>

[122] [CITE@en[Omit Referer header when referrer is "no-referrer"]]
([[annevk]]著, [TIME[2016-07-25 20:32:24 +09:00]])
<https://github.com/whatwg/fetch/commit/7feaed2cc1d4ac97ea6a3f47ab6aa50e7377e161>

[123] [CITE@en[Referrer: add three new policy states]]
([[fmarier]]著, [TIME[2016-07-28 02:50:27 +09:00]])
<https://github.com/whatwg/html/commit/9da0638cdd379861932fb92316fb9aa8dc62a013>

[124] [CITE@en[Referrer policy: reorder the "no-referrer-when-downgrade" state]]
([[fmarier]]著, [TIME[2016-07-28 06:03:37 +09:00]])
<https://github.com/whatwg/html/commit/0cb2672dee96e2a5954c37fee2820c0629aa2df7>

[125] [CITE@en[Referrer policies: add the missing policies]]
([[fmarier]]著, [TIME[2016-07-30 08:29:02 +09:00]])
<https://github.com/whatwg/fetch/commit/eb08febe5f56f7beefa21e91366c4fa5a545e7d8>

[126] [CITE@en[Use img referrerpolicy attribute when fetching images]]
([[estark37]]著, [TIME[2016-08-11 03:04:37 +09:00]])
<https://github.com/whatwg/html/commit/b077861fec94ae84287ffadd028d0c072df63067>

[127] [CITE@en[Use link referrerpolicy attribute when obtaining the resource]]
([[estark37]]著, [TIME[2016-08-11 05:07:50 +09:00]])
<https://github.com/whatwg/html/commit/b209fa011d8d1c315cbca973aba0ae40d335b67c>

[128] [CITE@en[Set referrer policy better for <iframe srcdoc> documents]]
([[domenic]]著, [TIME[2016-08-12 06:23:46 +09:00]])
<https://github.com/whatwg/html/commit/5d7c532fc9aa275bd3b12d469b9841c0bad4f50d>

[129] [CITE@en[Integrate referrerpolicy for a, area, iframe, and link elements]]
([[estark37]]著, [TIME[2016-08-12 06:42:26 +09:00]])
<https://github.com/whatwg/html/commit/2e955e66ae7f815efe09ccac6445cfbdcbf643ab>

[130] [CITE@en[Replace referrer directive with Referrer-Policy header by estark37 · Pull Request #14 · w3c/webappsec-referrer-policy]]
([TIME[2016-08-20 10:50:18 +09:00]])
<https://github.com/w3c/webappsec-referrer-policy/pull/14>

[131] [CITE@en[Copy referrer policy concept and enum from Fetch (#64)]]
([[estark37]]著, [TIME[2016-08-26 06:17:41 +09:00]])
<https://github.com/w3c/webappsec-referrer-policy/commit/7e44fb850385ab9bbe22d13a53721e419a278c87>

[132] [CITE@en[Editorial: referrer policy definitions moved to Referrer Policy]]
([[annevk]]著, [TIME[2016-08-26 17:31:31 +09:00]])
<https://github.com/whatwg/fetch/commit/8243753e527088eb97f11af025cb930f18be0269>

[133] [CITE@en[Do not repeat the referrer policies]]
([[domenic]]著, [TIME[2016-08-26 06:33:48 +09:00]])
<https://github.com/whatwg/html/commit/4c228d3fd9e61dee2c45ee0cd7722e1671f6ca9f>

[134] [CITE@en[Use referrer policy definition in parsing Referrer-Policy headers (#66)]]
([[estark37]]著, [TIME[2016-08-26 06:44:10 +09:00]])
<https://github.com/w3c/webappsec-referrer-policy/commit/7d5b2800d25fffe6706d7e705150a8485e0039aa>

[135] [CITE@en[Update and correct <meta name="referrer"> parsing]]
([[domenic]]著, [TIME[2016-08-27 14:43:39 +09:00]])
<https://github.com/whatwg/html/commit/7cdc83d7a045f255967cd54504c1e35e2f87c7df>

[137] [CITE@en[Remove "Determine policy for token" (#67)]]
([[estark37]]著, [TIME[2016-08-28 21:29:36 +09:00]])
<https://github.com/w3c/webappsec-referrer-policy/commit/2b13067c595168a0aa0024ffda43ada9be171e97>

[138] [CITE@en[Quoted Referrer-Policy values]]
([[Emily Stark (Dunn)]]著, [TIME[2016-09-01 01:26:46 +09:00]])
<https://lists.w3.org/Archives/Public/public-webappsec/2016Aug/0050.html>

[139] [CITE@en[Re: Quoted Referrer-Policy values]]
([[Mike West]]著, [TIME[2016-09-07 21:08:46 +09:00]])
<https://lists.w3.org/Archives/Public/public-webappsec/2016Sep/0003.html>

[140] [CITE@en[Add a section about CSS and referrers (#5) (#68)]]
([[jeisinger]]著, [TIME[2016-10-03 11:05:25 +09:00]])
<https://github.com/w3c/webappsec-referrer-policy/commit/f33451dfe7eac776f51940a5f3916f5602b2412c>

[141] [CITE@en[Referrer Policy]]
([TIME[2016-10-16 13:07:03 +09:00]])
<https://www.w3.org/TR/2016/WD-referrer-policy-20161016/>

[142] [CITE@en['''['''REFERRER''']''' Call for Consensus: Referrer Policy to Candidate Recommenation]]
([[Emily Stark]]著, [TIME[2016-10-16 13:18:04 +09:00]])
<https://lists.w3.org/Archives/Public/public-webappsec/2016Oct/0010.html>

[143] [CITE@en[Add referrerpolicy to <area> content attributes]]
([[sideshowbarker]]著, [TIME[2016-12-13 00:35:26 +09:00]])
<https://github.com/whatwg/html/commit/018647197c02e0199372caf928edd5c7784147d1>

[145] [CITE@en[Update "Integration with CSS" section to be more concrete]]
([[jeisinger]]著, [TIME[2016-12-22 21:14:33 +09:00]])
<https://github.com/w3c/webappsec-referrer-policy/commit/8074884cebc065d9988096248d3ad8d9983b58b1>

[146] [CITE@en[Referrer Policy]]
([TIME[2016-12-22 23:55:54 +09:00]])
<https://www.w3.org/TR/2016/WD-referrer-policy-20161222/>

[147] [CITE@en[Re: '''['''REFERRER''']''' Call for Consensus: Referrer Policy to Candidate Recommenation]]
([[Brad Hill]]著, [TIME[2016-12-23 03:11:46 +09:00]])
<https://lists.w3.org/Archives/Public/public-webappsec/2016Dec/0016.html>

[148] [CITE@en[Referrer Policy]]
([TIME[2017-01-24 04:51:44 +09:00]])
<https://www.w3.org/TR/2017/CR-referrer-policy-20170126/>

[65] [CITE@en[Clarify referrer rules for inline styles]]
([[jeisinger]]著, [TIME[2017-01-12 00:34:43 +09:00]])
<https://github.com/w3c/webappsec-referrer-policy/commit/1a80ddadd88a81d8a81c545aec9ae0da66c28a1d>

[158] [CITE@en[update CSS text to also talk about presentational hints]]
([[jeisinger]]著, [TIME[2017-03-28 22:35:58 +09:00]])
<https://github.com/w3c/webappsec-referrer-policy/commit/618cdccbf455dae16dc5b5085db87711574e7843>

[159] [CITE@en[advance Referrer Policy?]]
([[Emily Stark]]著, [TIME[2017-07-21 15:47:41 +09:00]])
<https://lists.w3.org/Archives/Public/public-webappsec/2017Jul/0003.html>

[160] [CITE[Release Notes for Safari Technology Preview 38 | WebKit]]
([TIME[2017-08-24 12:11:35 +09:00]])
<https://webkit.org/blog/7877/release-notes-for-safari-technology-preview-38/>

[161] [CITE@en[Re: advance Referrer Policy?]]
([[Mike West]]著, [TIME[2017-08-25 00:52:20 +09:00]])
<https://lists.w3.org/Archives/Public/public-webappsec/2017Aug/0009.html>

[162] [CITE@en[Add a note that Referrer-Policy header values should not be quoted]]
([[estark37]]著, [TIME[2017-11-06 02:53:29 +09:00]])
<https://github.com/w3c/webappsec-referrer-policy/commit/e51d9f2310a389b8da95f6a116f2b112969441a0>

[163] [CITE@en[Please clarify if header value should be enclosed in quotes or not · Issue #97 · w3c/webappsec-referrer-policy]]
([TIME[2017-11-06 12:47:52 +09:00]])
<https://github.com/w3c/webappsec-referrer-policy/issues/97>

[FIG(quote)[
[FIGCAPTION[
[164] [CITE@en-US[Preventing data leaks by stripping path information in HTTP Referrers | Mozilla Security Blog]]
([TIME[2018-02-01 00:26:12 +09:00]])
<https://blog.mozilla.org/security/2018/01/31/preventing-data-leaks-by-stripping-path-information-in-http-referrers/>
]FIGCAPTION]

> Firefox Private Browsing Mode will remove path information from referrers sent to third parties starting in Firefox 59.

]FIG]


[165] [CITE@en[Editorial: cleanup window.opener]]
([[annevk]]著, [TIME[2018-02-09 02:24:50 +09:00]])
<https://github.com/whatwg/html/commit/15317c7a58040af294510e7511c0512a19083ffb>

[166] [CITE@en[Add <link> rel="modulepreload"]]
([[domenic]]著, [TIME[2017-12-15 05:04:40 +09:00]])
<https://github.com/whatwg/html/commit/7c28027b80208aa6b126fa7b086c44877f584178>

[168] [CITE@en[Add <link> rel="modulepreload" by domenic · Pull Request #2383 · whatwg/html]]
([TIME[2018-03-20 15:23:13 +09:00]])
<https://github.com/whatwg/html/pull/2383>

[FIG(quote)[
[FIGCAPTION[
[169] [CITE@en[GitHub]]
([TIME[2018-04-14 20:02:27 +09:00]])
<https://github.com/>
]FIGCAPTION]

> Referrer-Policy: origin-when-cross-origin, strict-origin-when-cross-origin
> 

]FIG]


[170] [CITE@en[Add referrerpolicy attribute support to <script>s]]
([[domfarolino]]著, [TIME[2018-05-31 00:06:49 +09:00]])
<https://github.com/whatwg/html/commit/0d28f8fc3a7c272f6d148f647ead29965a56ab60>

[171] [CITE@en[Why no referrerpolicy="" on <script>? · Issue #96 · w3c/webappsec-referrer-policy]]
([TIME[2018-08-10 23:17:39 +09:00]])
<https://github.com/w3c/webappsec-referrer-policy/issues/96>

[172] [CITE@en[Add referrerpolicy attribute support to <script>s by domfarolino · Pull Request #3678 · whatwg/html]]
([TIME[2018-08-10 23:18:36 +09:00]])
<https://github.com/whatwg/html/pull/3678>

[173] [CITE@en[175069 – Improve our support for referrer policies]]
([TIME[2018-09-26 02:42:16 +09:00]])
<https://bugs.webkit.org/show_bug.cgi?id=175069>


[176] [CITE@en[Stricter default Referrer-Policy? · Issue #70 · WICG/interventions · GitHub]]
([TIME[2020-05-14 11:47:29 +09:00]])
<https://github.com/WICG/interventions/issues/70>



[175] [CITE@en[Make the Origin header honor Referrer Policy (outside of CORS)]]
([[JuniorHsu]]著, [TIME[2019-06-27 18:38:15 +09:00]])
<https://github.com/whatwg/fetch/commit/cc80ec58d24668413b7a3c7160d9b4d83ace7b20>

[177] [CITE@en[Let Origin header honor referrer policy for non CORS request by JuniorHsu · Pull Request #908 · whatwg/fetch]]
([TIME[2020-07-13 14:45:21 +09:00]])
<https://github.com/whatwg/fetch/pull/908>

[178] [CITE@en[Add Dominic Farolino as an editor]]
([[domfarolino]], [TIME[2019-12-04 02:03:44 +09:00]], [TIME[2021-03-17T08:17:33.000Z]])
<https://github.com/w3c/webappsec-referrer-policy/commit/c59b31b9444068ed3c7e78cdf1c6c4f3facb3ee0>

[179] [CITE@en[Add Dominic Farolino as an editor by domfarolino · Pull Request #130 · w3c/webappsec-referrer-policy]]
([TIME[2021-03-17T08:17:44.000Z]])
<https://github.com/w3c/webappsec-referrer-policy/pull/130>

[180] [CITE@en[Editorial: nested browsing context is a member, not a type]]
([[annevk]], [TIME[2019-11-27 02:46:03 +09:00]], [TIME[2022-01-18T09:29:14.000Z]])
<https://github.com/whatwg/html/commit/6b737bbc428facf34ec3728c0912cf9e172d0ea4>