Referrer-Policy ãããã¼
Baseline
åºãå©ç¨å¯è½
*
ãã®æ©è½ã¯åºãå®è£ ããã¦ãããå¤ãã®ãã¼ã¸ã§ã³ã®ç«¯æ«ããã©ã¦ã¶ã¼ã§åä½ãã¾ãã2020å¹´1æä»¥éããã¹ã¦ã®ãã©ã¦ã¶ã¼ã§å©ç¨å¯è½ã§ãã
* ãã®æ©è½ã®ä¸é¨ã¯ã対å¿ã¬ãã«ãç°ãªãå ´åãããã¾ãã
HTTP ã® Referrer-Policy ã¯ã¬ã¹ãã³ã¹ãããã¼ã§ã ãªãã¡ã©ã¼æ
å ±ï¼Referer ãããã¼ã§éãããï¼ããªã¯ã¨ã¹ãã«ã©ãã ãå«ããããå¶å¾¡ãã¾ãã HTTP ãããã¼ã®ã»ãã«ã HTML ã§ãã®ããªã·ã¼ãè¨å®ãããã¨ãã§ãã¾ãã
| ãããã¼ç¨®å¥ | ã¬ã¹ãã³ã¹ãããã¼ |
|---|
æ§æ
Referrer-Policy: no-referrer
Referrer-Policy: no-referrer-when-downgrade
Referrer-Policy: origin
Referrer-Policy: origin-when-cross-origin
Referrer-Policy: same-origin
Referrer-Policy: strict-origin
Referrer-Policy: strict-origin-when-cross-origin
Referrer-Policy: unsafe-url
ã¡ã¢:
å
ã®ãããã¼åã§ãã Referer 㯠"referrer" ã¨ããèªã®ã¹ãã«ãã¹ã§ãã Referrer-Policy ãããã¼ã¯ãã®ã¹ãã«ãã¹ããã¦ãã¾ããã
ãã£ã¬ã¯ãã£ã
no-referrer-
Refererãããã¼ãçç¥ããã¾ããéä¿¡ããããªã¯ã¨ã¹ãã«ã¯ãªãã¡ã©ã¼æ å ±ãå«ã¾ãã¾ããã no-referrer-when-downgrade-
ãããã³ã«ã®ã»ãã¥ãªãã£æ°´æºãåä¸ã§ãããåä¸ããå ´å (HTTPâHTTP, HTTPâHTTPS, HTTPSâHTTPS) ã¯ããªãªã¸ã³ããã¹ãã¯ã¨ãªã¼æååã
Refererãããã¼ã§éä¿¡ããã¾ããã»ãã¥ãªãã£æ°´æºãä½ä¸ãããªã¯ã¨ã¹ã (HTTPSâHTTP, HTTPSâfile) ã§ã¯Refererãããã¼ãéä¿¡ããã¾ããã origin-
ãªãªã¸ã³ã®ã¿ã
Refererãããã¼ã§éä¿¡ããã¾ãã ãã¨ãã°ãhttps://example.com/page.htmlã«ããææ¸ããã¯ãhttps://example.com/ã¨ãããªãã¡ã©ã¼ãéä¿¡ããã¾ãã origin-when-cross-origin-
åä¸ã®ãããã³ã«æ°´æº (HTTPâHTTP, HTTPSâHTTPS) ã§åä¸ãªãªã¸ã³ã®ãªã¯ã¨ã¹ããè¡ãå ´åã¯ãªãªã¸ã³ããã¹ãã¯ã¨ãªã¼æååãéä¿¡ãã¾ããå¥ãªãªã¸ã³ã¸ã®ãªã¯ã¨ã¹ããå®å ¨æ§ã®ä½ä¸ããç§»åå (HTTPSâHTTP) ã§ã¯ãªãªã¸ã³ã®ã¿ãéä¿¡ãã¾ãã
same-origin-
åä¸ãªãªã¸ã³ã®ãªã¯ã¨ã¹ãã§ã¯ãªãªã¸ã³ããã¹ãã¯ã¨ãªã¼æååãéä¿¡ãã¾ããå¥ãªãªã¸ã³ã¸ã®ãªã¯ã¨ã¹ãã§ã¯
Refererãããã¼ãéä¿¡ãã¾ããã strict-origin-
ãããã³ã«ã®ã»ãã¥ãªãã£æ°´æºãåãã§ããå ´å (HTTPSâHTTPS) ã«ãªãªã¸ã³ã®ã¿ãéä¿¡ãã¾ããå®å ¨æ§ã®ä½ä¸ããç§»åå (HTTPSâHTTP) ã«ã¯
Refererãããã¼ãéä¿¡ãã¾ããã strict-origin-when-cross-origin(æ¢å®å¤)-
åä¸ãªãªã¸ã³ã®ãªã¯ã¨ã¹ããè¡ãéã¯ãªãªã¸ã³ããã¹ãã¯ã¨ãªã¼æååãéä¿¡ãã¾ããå¥ãªãªã¸ã³ã¸ã®ãªã¯ã¨ã¹ãã§ã¯ããããã³ã«ã®ã»ãã¥ãªãã£æ°´æºãåãã§ããå ´å (HTTPSâHTTPS) ã«ãªãªã¸ã³ã®ã¿ãéä¿¡ãã¾ããå®å ¨æ§ã®ä½ä¸ããç§»åå (HTTPSâHTTP) ã«ã¯
Refererãããã¼ãéä¿¡ãã¾ãããã¡ã¢: ããã¯ããªã·ã¼ãæå®ããã¦ããªãå ´åããä¸ããããå¤ãç¡å¹ã§ãã£ãå ´åã®æ¢å®ã®ããªã·ã¼ã§ã (仿§æ¸æ¹è¨ November 2020 ãåç §) ã以åã®æ¢å®å¤ã¯
no-referrer-when-downgradeã§ããã unsafe-url-
ã»ãã¥ãªãã£ã«é¢ä¿ãªããã©ã®ãªã¯ã¨ã¹ããè¡ã£ãå ´åã§ãããªãªã¸ã³ããã¹ãã¯ã¨ãªã¼æååãéä¿¡ãã¾ãã
è¦å: ãã®ããªã·ã¼ã¯ã HTTPS ãªã½ã¼ã¹ã® URL ããå®å ¨ã§ã¯ãªããªãªã¸ã³ã¸ãã©ã¤ãã¼ãã§ããå¯è½æ§ãããæ å ±ãæ¼æ´©ãã¾ããè¨å®ããå ´åã¯å½±é¿ãããæ¤è¨ãã¦ãã ããã
HTML ã¨ã®çµ±å
HTML å
ã§ãªãã¡ã©ã¼ããªã·ã¼ãè¨å®ãããã¨ãã§ãã¾ããä¾ãã°ã <meta> è¦ç´ ã§ name ã« referrer ãè¨å®ãããã¨ã§ãææ¸å
¨ä½ã®ãªãã¡ã©ã¼ããªã·ã¼ãè¨å®ãããã¨ãã§ãã¾ãã
<meta name="referrer" content="origin" />
<a>, <area>, <img>, <iframe>, <script>, <link> ã®åè¦ç´ ã« referrerpolicy 屿§ãæå®ããåå¥ã®ãªã¯ã¨ã¹ãã«ãªãã¡ã©ã¼ããªã·ã¼ãè¨å®ãããã¨ãã§ãã¾ãã
<a href="http://example.com" referrerpolicy="origin">â¦</a>
ä»ã«ã noreferrer link é¢ä¿ã a, area, link ã®åè¦ç´ ã«è¨å®ãããã¨ãã§ãã¾ãã
<a href="http://example.com" rel="noreferrer">â¦</a>
è¦å:
ä¸è¨ã®ããã«ã noreferrer link é¢ä¿ã¯ããã·ã¥è¨å·ãç¨ããã«è¨è¿°ããã¾ãã <meta> è¦ç´ ã§ææ¸å
¨ä½ã®ãªãã¡ã©ã¼ããªã·ã¼ãæå®ããã¨ãã¯ããã·ã¥ãã¤ã㦠<meta name="referrer" content="no-referrer"> ã®ããã«è¨è¿°ãã¾ãã
CSS ã¨ã®çµ±å
CSS ã¯ã¹ã¿ã¤ã«ã·ã¼ãããåç §ããããªã½ã¼ã¹ã«ã¢ã¯ã»ã¹ãããã¨ãããã¾ãããããã®ãªã½ã¼ã¹ã¯åæ§ã«ãªãã¡ã©ã¼ããªã·ã¼ã«å¾ãã¾ãã
- å¤é¨ã® CSS ã¹ã¿ã¤ã«ã·ã¼ãã§ã¯ããã®ã¬ã¹ãã³ã¹ã®
Referrer-Policyãããã¼ã«ãã䏿¸ããããªãéããæ¢å®ã®ããªã·ã¼ (strict-origin-when-cross-origin) ã使ç¨ããã¾ãã <style>è¦ç´ ã¾ãã¯style屿§ã«ã¤ãã¦ã¯ãææè ã®ææ¸ã®ãªãã¡ã©ã¼ããªã·ã¼ã使ç¨ããã¾ãã
ä¾
>no-referrer
| åºç¹ã®ææ¸ | ç§»åå | 使ç¨ããããªãã¡ã©ã¼ |
|---|---|---|
https://example.com/page |
ãã¹ã¦ã®å ´æ | ï¼ãªãã¡ã©ã¼ãªãï¼ |
no-referrer-when-downgrade
| åºç¹ã®ææ¸ | ç§»åå | 使ç¨ããããªãã¡ã©ã¼ |
|---|---|---|
https://example.com/page |
https://example.com/otherpage |
https://example.com/page |
https://example.com/page |
https://mozilla.org |
https://example.com/page |
https://example.com/page |
http://example.com | ï¼ãªãã¡ã©ã¼ãªãï¼ |
| http://example.com/page | ãã¹ã¦ã®å ´æ | http://example.com/page |
origin
| åºç¹ã®ææ¸ | ç§»åå | 使ç¨ããããªãã¡ã©ã¼ |
|---|---|---|
https://example.com/page |
ãã¹ã¦ã®å ´æ | https://example.com/ |
origin-when-cross-origin
| åºç¹ã®ææ¸ | ç§»åå | 使ç¨ããããªãã¡ã©ã¼ |
|---|---|---|
https://example.com/page |
https://example.com/otherpage |
https://example.com/page |
https://example.com/page |
https://mozilla.org |
https://example.com/ |
https://example.com/page |
http://example.com/page | https://example.com/ |
same-origin
| åºç¹ã®ææ¸ | ç§»åå | 使ç¨ããããªãã¡ã©ã¼ |
|---|---|---|
https://example.com/page |
https://example.com/otherpage |
https://example.com/page |
https://example.com/page |
https://mozilla.org |
ï¼ãªãã¡ã©ã¼ãªãï¼ |
strict-origin
| åºç¹ã®ææ¸ | ç§»åå | 使ç¨ããããªãã¡ã©ã¼ |
|---|---|---|
https://example.com/page |
https://mozilla.org |
https://example.com/ |
https://example.com/page |
http://example.com | ï¼ãªãã¡ã©ã¼ãªãï¼ |
| http://example.com/page | ãã¹ã¦ã®å ´æ | http://example.com/ |
strict-origin-when-cross-origin
| åºç¹ã®ææ¸ | ç§»åå | 使ç¨ããããªãã¡ã©ã¼ |
|---|---|---|
https://example.com/page |
https://example.com/otherpage |
https://example.com/page |
https://example.com/page |
https://mozilla.org |
https://example.com/ |
https://example.com/page |
http://example.com | ï¼ãªãã¡ã©ã¼ãªãï¼ |
unsafe-url
| åºç¹ã®ææ¸ | ç§»åå | 使ç¨ããããªãã¡ã©ã¼ |
|---|---|---|
https://example.com/page?q=123 |
ãã¹ã¦ã®å ´æ | https://example.com/page?q=123 |
代æ¿ããªã·ã¼ã®æå®
å¿ è¦ãªããªã·ã¼ã®ãã©ã¦ã¶ã¼ã®å¯¾å¿ç¶æ³ãååã§ã¯ãªãã代æ¿ããªã·ã¼ãè¨å®ãããå ´åã¯ãã«ã³ãåºåãã®ãªã¹ãã使ç¨ããå¿ è¦ãªããªã·ã¼ãæå¾ã«æå®ãã¦ãã ããã
Referrer-Policy: no-referrer, strict-origin-when-cross-origin
ä¸è¨ã®ã·ããªãªã§ã¯ã no-referrer ã¯ãã©ã¦ã¶ã¼ã strict-origin-when-cross-origin ã«å¯¾å¿ãã¦ããªãå ´åã®ã¿ä½¿ç¨ããã¾ãã
ã¡ã¢:
è¤æ°ã®å¤ãè¨å®ããæ¹æ³ã¯ã HTTP ã® Referrer-Policy ãããã¼ã®ã¿ã対å¿ãã¦ããã referrerpolicy 屿§ã§ã¯å¯¾å¿ãã¦ãã¾ããã
ãã©ã¦ã¶ã¼åºæã®è¨å®
>Firefox ã®è¨å®
Firefox ã®ã¦ã¼ã¶ã¼è¨å®ã§ã¯æ¢å®ã®ãªãã¡ã©ã¼ããªã·ã¼ãæ§æã§ãã¾ããè¨å®åã¯ãã¼ã¸ã§ã³ã«ããç°ãªãã¾ãã
- Firefox ãã¼ã¸ã§ã³ 59 以é:
network.http.referer.defaultPolicy(ãã©ã¤ãã¼ããããã¯ã¼ã¯ã§ã¯network.http.referer.defaultPolicy.pbmode) - Firefox ãã¼ã¸ã§ã³ 53 ãã 58:
network.http.referer.userControlPolicy
ã©ã¡ãã 0 = no-referrer, 1 = same-origin, 2 = strict-origin-when-cross-origin, 3 = no-referrer-when-downgrade ã¨ãåãè¨å®å¤ãã¨ãã¾ãã
仿§æ¸
| 仿§æ¸ |
|---|
| Referrer Policy > # referrer-policy-header > |