ç¡ä¿¡é ¼ã® iframe
å©ç¨å¯è½æ§ã¯éå®ç
ãã®æ©è½ã¯ãã¼ã¹ã©ã¤ã³ã§ã¯ããã¾ãããæãåºã使ç¨ããã¦ãããã©ã¦ã¶ã¼ã®ä¸é¨ã§åä½ãã¾ããã
Want more browser support for this feature? Tell us why.
Experimental: ããã¯å®é¨çãªæ©è½ã§ãã
æ¬çªã§ä½¿ç¨ããåã«ãã©ã¦ã¶ã¼äºææ§ä¸è¦§è¡¨ããã§ãã¯ãã¦ãã ããã
ç¡ä¿¡é ¼ã® iframe ã¯ãéçºè
ãæ°ããã䏿çãªã³ã³ããã¹ãã使ç¨ã㦠<iframe> ã§ãµã¼ããã¼ãã£è£½ã®ãªã½ã¼ã¹ãèªã¿è¾¼ãããã®ã¡ã«ããºã ãæä¾ãã¾ããããã¯ãé常ã®ãªãªã¸ã³ã®ãããã¯ã¼ã¯ãã¯ããã¼ãã¹ãã¬ã¼ã¸ãã¼ã¿ã«ã¢ã¯ã»ã¹ãããã¨ã¯ã§ãã¾ãããæä¸ä½ã®ææ¸ã®å¯¿å½ãé度ã¨ããæ°ããã³ã³ããã¹ãã使ç¨ãã¾ããçµæçã« Cross-Origin-Embedder-Policy (COEP) åãè¾¼ã¿ã«ã¼ã«ãè§£é¤ãããã¨ãã§ããã®ã§ãCOEP ãè¨å®ããææ¸ã«ãããã§ãªããµã¼ããã¼ãã£ã¼ã®ææ¸ãåãè¾¼ããã¨ãã§ãã¾ãã
åé¡
ä¾ãã°ãSharedArrayBuffer ã high-resolution timers ãªã©ã®æ§ã
ãªã¦ã§ã API ã®æ©è½ãããªãªã¸ã³éåé¢ã鏿ãã¦ãããµã¤ãã§ã®ã¿ä½¿ç¨ã§ãã¾ãã ããã¯ããã®ãããªæ©è½ã Spectre æ»æã§æªç¨ããã被害è
ã®æ©å¯æ
å ±ããµã¤ããã£ãã«çµç±ã§æµåºããæ»æè
ã«ææãããå±éºæ§ãããããã§ãã
ãªãªã¸ã³éåé¢ãæ¡ç¨ããããã«ã¯ããªã½ã¼ã¹ã¯ Cross-Origin-Opener-Policy ã®å¤ã same-origin ï¼æ»æè
ãããªãªã¸ã³ãä¿è·ï¼ãCross-Origin-Embedder-Policy ã credentialless ã¾ã㯠require-corp ï¼è¢«å®³è
ãããªãªã¸ã³ãä¿è·ï¼ã§æä¾ããå¿
è¦ãããã¾ããå¾è
ã¯ãCross-Origin-Resource-Policy ã¾ãã¯ãªãªã¸ã³éãªã½ã¼ã¹å
±æãç¨ãã¦æç¤ºçã«ææ¸ã許å¯ãã¦ããªããè³æ ¼æ
å ±ã®ããå¥ãªãªã¸ã³ã®ãããããªã½ã¼ã¹ãææ¸ãèªã¿è¾¼ãã®ã鲿¢ãã¾ãã
ãªãªã¸ã³éåé¢ã®æ¡ç¨ãå¶éãã主è¦ãªèª²é¡ã¯ãCross-Origin-Embedder-Policy ãå帰çã«é©ç¨ããããã¨ã§ããCross-Origin-Embedder-Policy ãè¨å®ãããææ¸å
ã® <iframe> ã«èªã¿è¾¼ã¾ãããµã¼ããã¼ãã£ã¼ã®ã³ã³ãã³ãã¯ãåãè¾¼ã¿ã«æåããããã« Cross-Origin-Embedder-Policy ãå±éãã¦ããå¿
è¦ãããã¾ããããã¯ããµã¼ããã¼ãã£ã¼ã®ã³ã³ãã³ãï¼åºåãããã¯ã¼ã¯ã³ã³ãã³ããªã©ï¼ãã¢ããªã«åãè¾¼ãéçºè
ã«ã¨ã£ã¦ãä¸è¬çã«å¶å¾¡ãããã¨ãã§ããªãããåé¡ã¨ãªãã¾ããä»ã¾ã§ã¯ããµã¼ããã¼ãã£ã¼ã®ã³ã³ãã³ããããã¤ãã¼ã Cross-Origin-Embedder-Policy ãå®è£
ããã®ãå¾
ã¤ãããªãã£ãããã§ãã
ãã®åé¡ããç¡ä¿¡é ¼ã® iframe ã§è§£æ±ºã§ãã¾ãã
解決ç â ç¡ä¿¡é ¼ã® iframe
<iframe> ã¯ãcredentialless 屿§ãé©ç¨ããããåçã® DOM ãããã㣠HTMLIFrameElement.credentialless ã true ãè¨å®ãã¦ä¿¡é ¼æ§ã確ä¿ãããã¨ãã§ãã¾ãã
<iframe
src="https://en.wikipedia.org/wiki/Spectre_(security_vulnerability)"
title="Spectre vulnerability Wikipedia page"
width="960"
height="600"
credentialless></iframe>
ã¾ãã¯
<iframe width="960" height="600"> </iframe>
const iframeElem = document.querySelector("iframe");
iframeElem.credentialless = true;
iframeElem.title = "Spectre vulnerability Wikipedia page";
iframeElem.src =
"https://en.wikipedia.org/wiki/Spectre_(security_vulnerability)";
ã¡ã¢:
Window.credentialless ããããã£ã¯ã<iframe> ã«åãè¾¼ã¾ããææ¸ããç¡ä¿¡é ¼ã®ã³ã³ããã¹ãã§å®è¡ããã¦ãããã©ããã調ã¹ãããã«ãåãåããããã¨ãã§ãã¾ããå¤ã true ã®å ´åãåãè¾¼ã¾ãã¦ãã <iframe> ãç¡ä¿¡é ¼ã§ãããã¨ãæå³ãã¾ãã
ãã®çµæãç¡ä¿¡é ¼ã® <iframe> å
ã®ææ¸ã¯ãæ°ããã䏿çãªã³ã³ããã¹ãã使ç¨ãã¦èªã¿è¾¼ã¾ãããã¨ã«ãªãã¾ãããããã®ã³ã³ããã¹ãã¯ããã®ãªãªã¸ã³ã«é¢é£ãããã¼ã¿ãä¾ãã°ã¯ããã¼ããã¼ã«ã«ã¹ãã¬ã¼ã¸ã«ã¢ã¯ã»ã¹ãããã¨ã¯ã§ãã¾ãããç¡ä¿¡é ¼ã®ã¹ãã¬ã¼ã¸ã¯ãæä¸ä½ã®ææ¸ãã¨ã« 1 åè¨å®ããããã³ã¹ ("number used once") å¤ã§å¤æ´ãããã¹ãã¬ã¼ã¸ãã¼ã§å¥åã«åå²ããã¾ãããããã£ã¦ãããç¡ä¿¡é ¼ã® <iframe> ã«è¨å®ãããã¯ããã¼ã¯ãåãæä¸ä½ã®ææ¸ã®ä¸ã«åãè¾¼ã¾ããä»ã®åããªãªã¸ã³ã®ç¡ä¿¡é ¼ã® <iframe> ããããã¢ã¯ã»ã¹ã§ããªããªãã¾ãã
ãã³ã¹ã¯ãåãæä¸ä½ææ¸ã®åå«ã§ãããã¹ã¦ã®ç¡ä¿¡é ¼ã® iframe ã§å
±æãããããã¦ã¼ã¶ã¼ãç§»åããããããã®ç°ãªãæä¸ä½ã®ææ¸ã§ã¯ç°ãªããã¦ã¼ã¶ã¼ãç§»åããå¾ã¯ããã¢ã¯ã»ã¹ã§ãã¾ãããç¡ä¿¡é ¼ã® iframe ã¯ç°ãªããã¼ã¸éã§ã¹ãã¬ã¼ã¸ãå
±æãã¾ãããä¸è¨ã®ã¯ããã¼ãè¿ãã¨ãææ¸ãåèªã¿è¾¼ã¿ããéãç°ãªãã³ã³ããã¹ãã§ç¡ä¿¡é ¼ã® <iframe> ãèªã¿è¾¼ã¾ãããããååè¨å®ããã¯ããã¼ã¯ã©ããå©ç¨ã§ãã¾ããã
ããã«å ãã¦ã以ä¸ã®ãã¨ãè¨ãã¾ãã
- ç¡ä¿¡é ¼ã® iframe ã§éãããã®ãããã¢ããã¯ã
rel="noopener"ãè¨å®ãã¦éããã¾ããããã«ãããOAuth ãããã¢ããããã¼ãç¡ä¿¡é ¼ã® iframe ã§ä½¿ç¨ããããã¨ãé²ããã¨ãã§ãã¾ãã - ãã©ã¦ã¶ã¼ã«ããèªåå
¥åããã¹ã¯ã¼ãç®¡çæ©è½ã¯ãç¡ä¿¡é ¼ã®
<iframe>ã§ã¯å©ç¨ã§ãã¾ããã
ãã®çµæãç¡ä¿¡é ¼ã® <iframe> ã«èªã¿è¾¼ã¾ããææ¸ã¯ãäºå®ä¸ãã¦ã¼ã¶ã¼ã®æ©å¯æ
å ±ã§ã«ã¹ã¿ãã¤ãºããã¦ããªãããã©çã¾ãã¯ãå
¬éãçã¨ãªãã¾ãããããã®ææ¸ããã¯å©ç¨ã§ããæ©å¯æ
å ±ããªããããæ»æè
ã«ã¨ã£ã¦ä½¿ç¨ãããã¨ã¯ãªãããããã® iframe ã§ã¯ Cross-Origin Embedder Policy ã®è¦ä»¶ã¯åé¤ããã¾ãã
å iframe å ã®å帰çãªç¡ä¿¡é ¼ã® iframe
credentialless ã <iframe> ã«è¨å®ããããã®ä¸ã«èªã¿è¾¼ã¾ããææ¸å
ã«å <iframe> ããã£ãå ´åããããã®å <iframe> ã¯ç¡ä¿¡é ¼ã®è¨å®ãç¶æ¿ããã
仿§æ¸
| 仿§æ¸ |
|---|
| Iframe credentialless > |