Sec-Fetch-Site ãããã¼
Baseline
åºãå©ç¨å¯è½
ãã®æ©è½ã¯åºãå®è£ ããã¦ãããå¤ãã®ãã¼ã¸ã§ã³ã®ç«¯æ«ããã©ã¦ã¶ã¼ã§åä½ãã¾ãã2023å¹´3æä»¥éããã¹ã¦ã®ãã©ã¦ã¶ã¼ã§å©ç¨å¯è½ã§ãã
Want more browser support for this feature? Tell us why.
HTTP ã® Sec-Fetch-Site ã¯ãã§ããã¡ã¿ãã¼ã¿ãªã¯ã¨ã¹ããããã¼ã§ããªã¯ã¨ã¹ãã®çºè¡å
ã®ãªãªã¸ã³ã¨ããªã¯ã¨ã¹ãããããªã½ã¼ã¹ã®ãªãªã¸ã³ã¨ã®é¢ä¿ã示ãã¾ãã
è¨ãæããã°ããã®ãããã¼ã¯ããªã½ã¼ã¹ã¸ã®ãªã¯ã¨ã¹ããåä¸ãªãªã¸ã³ãåä¸ãµã¤ãã å¥ãµã¤ãã®ã©ãããæ¥ã¦ããã®ãããããã¯ãã¦ã¼ã¶ã¼ãéå§ããããªã¯ã¨ã¹ãã§ãããããµã¼ãã¼ã«æç¤ºãã¾ãããµã¼ãã¼ã¯ãã®æ å ±ã«åºã¥ãã¦ããªã¯ã¨ã¹ãã許å¯ãããã¹ããå¦ãã夿ãããã¨ãã§ãã¾ãã
åä¸ãªãªã¸ã³ããã®ãªã¯ã¨ã¹ãã¯é常ããã©ã«ãã§è¨±å¯ããã¾ãããå¥ã®ãªãªã¸ã³ããã®ãªã¯ã¨ã¹ãã«ã¤ãã¦ã¯ãè¦æ±ããã¦ãããªã½ã¼ã¹ããå¥ã®ãã§ããã¡ã¿ãã¼ã¿ãªã¯ã¨ã¹ããããã¼å
ã®æ
å ±ã«ããã«ä¾åããå¯è½æ§ãããã¾ããããã©ã«ãã§ã¯ãåãå
¥ããããªããªã¯ã¨ã¹ã㯠403 ã¬ã¹ãã³ã¹ã³ã¼ãã§æå¦ãããã¹ãã§ãã
| ãããã¼ç¨®å¥ | ãã§ããã¡ã¿ãã¼ã¿ãªã¯ã¨ã¹ããããã¼ |
|---|---|
| ç¦æ¢ãªã¯ã¨ã¹ããããã¼ | ã¯ãï¼Sec- æ¥é è¾ï¼ |
| CORS ã»ã¼ããªã¹ããªã¯ã¨ã¹ããããã¼ | ããã |
æ§æ
Sec-Fetch-Site: cross-site
Sec-Fetch-Site: same-origin
Sec-Fetch-Site: same-site
Sec-Fetch-Site: none
ãã£ã¬ã¯ãã£ã
cross-site-
ãªã¯ã¨ã¹ãã®éä¿¡å ã¨ãªã½ã¼ã¹ããã¹ããã¦ãããµã¼ãã¼ã®ãµã¤ããç°ãªãã¾ãï¼ä¾ "potentially-evil.com" ããã® "example.com" ä¸ã®ãªã½ã¼ã¹ã¸ã®ãªã¯ã¨ã¹ãï¼ã
same-origin-
ãªã¯ã¨ã¹ãã®éä¿¡å ã¨ãªã½ã¼ã¹ããã¹ããããµã¼ãã¼ã®ãªãªã¸ã³ã¯åãã§ãï¼åãã¹ãã¼ã ããã¹ãããã¼ãçªå·ï¼ã
same-site-
ãªã¯ã¨ã¹ãã®çºè¡å ã¨ãªã½ã¼ã¹ããã¹ããããµã¼ãã¼ã¯ããµã¤ããã¹ãã¼ã ãå«ãã¦åä¸ã§ãã
none-
ãã®ãªã¯ã¨ã¹ãã¯ã¦ã¼ã¶ã¼ãéå§ããæä½ã§ããä¾ãã°ãã¢ãã¬ã¹ãã¼ã¸ã® URL å ¥åãããã¯ãã¼ã¯ãéãæä½ããã¡ã¤ã«ããã©ã¦ã¶ã¼ã¦ã£ã³ãã¦ã¸ãã©ãã°ï¼ããããããæä½ãªã©ã§ãã
ä¾
https://mysite.example ã®ã¦ã§ããã¼ã¸ï¼åããã¼ãï¼ãã https://mysite.example/foo.json ã¸ã®ãã§ãããªã¯ã¨ã¹ãã¯ãåä¸ãªãªã¸ã³ãªã¯ã¨ã¹ãã§ãã
ãã©ã¦ã¶ã¼ã¯ä¸è¨ã®ããã« Sec-Fetch-Site: same-origin ãããã¼ãçæãããµã¼ãã¼ã¯é常ãã®ãªã¯ã¨ã¹ãã許å¯ãã¾ãã
GET /foo.json
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: same-origin
å¥ã®ãµã¤ãï¼ä¾ãã° potentially-evil.comï¼ããåã URL ã¸ãã§ãããªã¯ã¨ã¹ããè¡ãã¨ããã©ã¦ã¶ã¼ã¯ç°ãªããããã¼ï¼ä¾ãã° Sec-Fetch-Site: cross-siteï¼ãçºè¡ãã¾ãããµã¼ãã¼ã¯ãã®ãããã¼ãåãå
¥ãããæå¦ãããã鏿ãããã¨ãå¯è½ã§ãã
GET /foo.json
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site
仿§æ¸
| 仿§æ¸ |
|---|
| Fetch Metadata Request Headers > # sec-fetch-site-header > |
ãã©ã¦ã¶ã¼ã®äºææ§
é¢é£æ å ±
- ãã§ããã¡ã¿ãã¼ã¿ãªã¯ã¨ã¹ããããã¼:
Sec-Fetch-Mode,Sec-Fetch-User,Sec-Fetch-Dest - Protect your resources from web attacks with Fetch Metadata (web.dev)
- Fetch Metadata Request Headers playground (secmetadata.appspot.com)