Sec-Fetch-Dest ãããã¼
Baseline
åºãå©ç¨å¯è½
*
ãã®æ©è½ã¯åºãå®è£ ããã¦ãããå¤ãã®ãã¼ã¸ã§ã³ã®ç«¯æ«ããã©ã¦ã¶ã¼ã§åä½ãã¾ãã2023å¹´3æä»¥éããã¹ã¦ã®ãã©ã¦ã¶ã¼ã§å©ç¨å¯è½ã§ãã
Want more browser support for this feature? Tell us why.
* ãã®æ©è½ã®ä¸é¨ã¯ã対å¿ã¬ãã«ãç°ãªãå ´åãããã¾ãã
HTTP ã® Sec-Fetch-Dest ã¯ãã§ããã¡ã¿ãã¼ã¿ãªã¯ã¨ã¹ããããã¼ã§ããªã¯ã¨ã¹ãã®å®å
ã示ãã¾ãã
ããã¯å
ã®ãã§ãããªã¯ã¨ã¹ãã®çºè¡å
ã§ããããã§ããããããã¼ã¿ã使ç¨ãããå ´æï¼ããã³æ¹æ³ï¼ã§ãã
ããã«ããããµã¼ãã¼ã¯ãã®ãªã¯ã¨ã¹ããå¦çãã¹ããã©ãããããã®ãªã¯ã¨ã¹ããæ³å®ãããä½¿ç¨æ¹æ³ã«é©ãã¦ãããã©ããã«åºã¥ãã¦å¤æã§ãã¾ããä¾ãã°ãaudio ã®å®å
ãæã¤ãªã¯ã¨ã¹ãã¯ãé³å£°ãã¼ã¿ãè¦æ±ãã¹ãã§ãããä»ã®ç¨®é¡ã®ãªã½ã¼ã¹ï¼ä¾ãã°ãæ©å¯æ§ã®é«ãã¦ã¼ã¶ã¼æ
å ±ãå«ãææ¸ãªã©ï¼ãè¦æ±ãã¹ãã§ã¯ããã¾ããã
| ãããã¼ç¨®å¥ | ãã§ããã¡ã¿ãã¼ã¿ãªã¯ã¨ã¹ããããã¼ |
|---|---|
| ç¦æ¢ãªã¯ã¨ã¹ããããã¼ | ã¯ãï¼Sec- æ¥é è¾ï¼ |
| CORS ã»ã¼ããªã¹ããªã¯ã¨ã¹ããããã¼ | ããã |
æ§æ
Sec-Fetch-Dest: audio
Sec-Fetch-Dest: audioworklet
Sec-Fetch-Dest: document
Sec-Fetch-Dest: embed
Sec-Fetch-Dest: empty
Sec-Fetch-Dest: fencedframe
Sec-Fetch-Dest: font
Sec-Fetch-Dest: frame
Sec-Fetch-Dest: iframe
Sec-Fetch-Dest: image
Sec-Fetch-Dest: manifest
Sec-Fetch-Dest: object
Sec-Fetch-Dest: paintworklet
Sec-Fetch-Dest: report
Sec-Fetch-Dest: script
Sec-Fetch-Dest: serviceworker
Sec-Fetch-Dest: sharedworker
Sec-Fetch-Dest: style
Sec-Fetch-Dest: track
Sec-Fetch-Dest: video
Sec-Fetch-Dest: webidentity
Sec-Fetch-Dest: worker
Sec-Fetch-Dest: xslt
ãã®ãããã¼ãä»ã®å¤ãå«ãã§ããå ´åããµã¼ãã¼ã¯ãããç¡è¦ãã¹ãã§ãã
ãã£ã¬ã¯ãã£ã
ã¡ã¢:
ãããã®ãã£ã¬ã¯ãã£ã㯠Request.destination ã§è¿ãããå¤ã«å¯¾å¿ãã¦ãã¾ãã
audio-
ãã®å®å ã¯ãé³å£°ãã¼ã¿ã§ãã ãã㯠HTML ã®
<audio>ã¿ã°ã«ç±æ¥ããå¯è½æ§ãããã¾ãã audioworklet-
ãã®å®å ã¯ãé³å£°ã¯ã¼ã¯ã¬ããã使ç¨ããããã«åå¾ããããã¼ã¿ã§ããããã¯
audioWorklet.addModule()ã®å¼ã³åºãã«ç±æ¥ããå¯è½æ§ãããã¾ãã document-
ãã®å®å ã¯ææ¸ï¼HTML ã¾ã㯠XMLï¼ã§ããããªã¯ã¨ã¹ãã¯ã¦ã¼ã¶ã¼ãéå§ããæä¸ä½ããã²ã¼ã·ã§ã³ï¼ä¾ï¼ã¦ã¼ã¶ã¼ããªã³ã¯ãã¯ãªãã¯ããçµæï¼ã®çµæã§ãã
embed-
ãã®å®å ã¯ãåãè¾¼ã¿ã³ã³ãã³ãã§ãããã㯠HTML ã®
<embed>ã¿ã°ã«ç±æ¥ããå¯è½æ§ãããã¾ãã empty-
ãã®å®å ã¯ç©ºã®æååã§ããããã¯ç¬èªã®å¤ãæããªãå®å ãä¾ãã°
fetch(),navigator.sendBeacon(),EventSource,XMLHttpRequest,WebSocketãªã©ã«ä½¿ç¨ããã¾ãã fencedframe-
ãã®å®å ã¯ãã§ã³ã¹ãã¬ã¼ã ã§ãã
font-
ãã®å®å ã¯ãã©ã³ãã§ãããã㯠CSS ã®
@font-faceã«ç±æ¥ããå¯è½æ§ãããã¾ãã frame-
ãã®å®å ã¯ãã¬ã¼ã ã§ãããã㯠HTML ã®
<frame>ã¿ã°ã«ç±æ¥ããå¯è½æ§ãããã¾ãã iframe-
ãã®å®å 㯠iframe ã§ãããã㯠HTML ã®
<iframe>ã¿ã°ã«ç±æ¥ããå¯è½æ§ãããã¾ãã image-
ãã®å®å ã¯ç»åã§ããããã¯ã HTML ã®
<img>ãSVG ã®<image>ãCSS ã®background-imageãCSS ã®cursorãCSS ã®list-style-imageãªã©ã«ç±æ¥ããå¯è½æ§ãããã¾ãã manifest-
ãã®å®å ã¯ãããã§ã¹ãã§ãããã㯠HTML ã® <link rel=manifest> ã«ç±æ¥ããå¯è½æ§ãããã¾ãã
object-
ãã®å®å ã¯ãªãã¸ã§ã¯ãã§ãããã㯠HTML ã®
<object>ã¿ã°ã«ç±æ¥ããå¯è½æ§ãããã¾ãã paintworklet-
ãã®å®å ã¯æç»ã¯ã¼ã¯ã¬ããã§ããããã¯
CSS.PaintWorklet.addModule()ã®å¼ã³åºãã«ç±æ¥ããå¯è½æ§ãããã¾ãã report-
ãã®å®å ã¯ã¬ãã¼ãï¼ä¾ãã°ãã³ã³ãã³ãã»ãã¥ãªãã£ããªã·ã¼ã®ã¬ãã¼ãï¼ã§ãã
script-
ãã®å®å ã¯ã¹ã¯ãªããã§ãããã㯠HTML ã®
<script>ã¿ã°ã¾ãã¯WorkerGlobalScope.importScripts()ã®å¼ã³åºãã«ç±æ¥ããå¯è½æ§ãããã¾ãã serviceworker-
ãã®å®å ã¯ãµã¼ãã¹ã¯ã¼ã«ã¼ã§ããããã¯
navigator.serviceWorker.register()ã®å¼ã³åºãã«ç±æ¥ããå¯è½æ§ãããã¾ãã -
ãã®å®å ã¯å ±æã¯ã¼ã«ã¼ã§ããããã¯
SharedWorkerã«ç±æ¥ããå¯è½æ§ãããã¾ãã style-
ãã®å®å ã¯ã¹ã¿ã¤ã«ã§ãããã㯠HTML ã® <link rel=stylesheet> ã¾ã㯠CSS ã®
@importã«ç±æ¥ããå¯è½æ§ãããã¾ãã track-
ãã®å®å 㯠HTML ããã¹ããã©ãã¯ã§ãããã㯠HTML ã®
<track>ã¿ã°ã«ç±æ¥ããå¯è½æ§ãããã¾ãã video-
ãã®å®å ã¯åç»ãã¼ã¿ã§ãããã㯠HTML ã®
<video>ã¿ã°ã«ç±æ¥ããå¯è½æ§ãããã¾ãã webidentity-
ãã®å®å ã¯ãã¦ã¼ã¶ã¼èªè¨¼ã«é¢é£ããã¨ã³ããã¤ã³ãã§ããä¾ãã°ãFedCM API ã«ããã¦ãID ãããã¤ãã¼ (IdP) ã¨ã³ããã¤ã³ãã®çæ£æ§ãæ¤è¨¼ãã CSRF æ»æãé²ãããã«ä½¿ç¨ããã¾ãã
worker-
ãã®å®å ã¯
Workerã§ãã xslt-
ãã®å®å 㯠XSLT 夿ã§ãã
ä¾
>Sec-Fetch-Dest ã®ä½¿ç¨
<img> è¦ç´ ã«ãã£ã¦çæãããã¯ãã¹ãµã¤ããªã¯ã¨ã¹ãã¯ã以ä¸ã® HTTP ãªã¯ã¨ã¹ããããã¼ãæã¤ãªã¯ã¨ã¹ãã¨ãªãã¾ãï¼å®å
ã image ã§ãããã¨ã«æ³¨æï¼ã
Sec-Fetch-Dest: image
Sec-Fetch-Mode: no-cors
Sec-Fetch-Site: cross-site
仿§æ¸
| 仿§æ¸ |
|---|
| Fetch Metadata Request Headers > # sec-fetch-dest-header > |
ãã©ã¦ã¶ã¼ã®äºææ§
é¢é£æ å ±
- ãã§ããã¡ã¿ãã¼ã¿ãªã¯ã¨ã¹ããããã¼:
Sec-Fetch-Mode,Sec-Fetch-Site,Sec-Fetch-User - Protect your resources from web attacks with Fetch Metadata (web.dev)
- Fetch Metadata Request Headers playground (secmetadata.appspot.com)