En <iframe> integrerer et andet HTML-dokument på din side (et kort, video, betalingswidget eller utilidelig brugerindhold). Fordi den integrerede side kan køre sine egne scripts, er sandbox-attributten nøglen til at integrere det sikkert.
En <iframe> integrerer et andet HTML-dokument på din side (et kort, video, betalingswidget eller utilidelig brugerindhold). Fordi den integrerede side kan køre sine egne scripts, er sandbox-attributten nøglen til at integrere det sikkert.
sandbox uden nogen værdi anvender maksimale begrænsninger: ingen scripts, ingen formularer, ingen pop-ups, behandler indholdet som et unikt origin. Du kan derefter selektivt genaktivere muligheder ved at liste tokens:
<iframe sandbox></iframe> <!-- locked down: scripts disabled, etc. -->
<iframe sandbox="allow-scripts allow-forms allow-popups"></iframe>
Almindelige tokens:
allow-scripts — lad det køre JavaScript.allow-forms — lad det indsende formularer.allow-same-origin — behold dets origin (uden dette har det et null-origin, hvilket blokerer lagring/cookies).allow-popups, allow-modals, allow-top-navigation.Sikkerhedsnotat: kombination af allow-scripts og allow-same-origin lader rammen fjerne sin egen sandbox, hvis det er samme-origin — undgå denne kombination for ulidelig indhold.
<iframe
referrerpolicy="no-referrer"
allow="camera 'none'; geolocation 'none'"
></iframe>
iframes integrerer tredjepartsindhold eller brugeroprettet indhold, som du ikke kontrollerer og ikke helt bør stole på. sandbox (deny-by-default, tillad kun det, der er nødvendigt) plus referrerpolicy/allow lader dig indeholde det indhold — forhindrer det i at køre uønskede scripts, navigere på din side eller få adgang til enhedsfunktioner.
Tilføj title for tilgængelighed og loading="lazy" for ydeevne.