Nye HTML5-attributter for IFRAME-elementet

Tre nye attributter forbedrer sikkerheten til dette allsidige HTML-elementet

HTML5-logo på skjermen

DavidMartynHunt / Flickr / CCBY





De iframe element bygger inn andre nettsider direkte på gjeldende side.HTML5introduserer tre nye attributter til dette elementet for å hjelpe til med å løse sikkerhets- og brukervennlighetsproblemene til HTML4 iframe gjennomføring.

«Sandbox»-attributtet

De Sandkasse egenskapen til iframe element er en nyttig sikkerhetsfunksjon for iframes. Når du plasserer den i en iframe element, tillater brukeragenten funksjoner som kan utgjøre en sikkerhetsrisiko for nettstedet og dets brukere.



For eksempel:

|_+_|

instruerer nettleseren om å nekte alle funksjoner som kan utgjøre en sikkerhetsrisiko – så ingen plugins, skjemaer, skript, utgående lenker, informasjonskapsler , lokal lagring og sidetilgang på samme side.



Deretter bruker du Sandkasse nøkkelordverdier, aktivere noen av funksjonene på nytt. Disse søkeordene er:

    tillate-skjemaer: Tillat innsending av skjema.tillate-samme opprinnelse: Tillat skript å få tilgang til innhold som informasjonskapsler fra samme opprinnelsesdomene.tillat-skript: Tillat skript å kjøre i denne IFRAME.tillate-topp-navigering: Tillat iframe-koblinger og skript til '_top'-målet

Ikke still inn begge tillat-skript og tillate-samme opprinnelse søkeord sammen på samme iframe . Hvis du gjør det, kan den innebygde siden fjerne Sandkasse attributt, som negerer sikkerhetsfordelene.

'srcdoc'-attributtet

De srcdoc attributt gir webdesigneren mer kontroll over iframes samt mer sikkerhet. I stedet for å koble til en nettside på en annen URL , plasserer webdesigneren HTML-en som skal vises i en iframe inne i srcdoc Egenskap.

Ved å plassere HTML som er opprettet av en ikke-klarert kilde, for eksempel et skjema, i en iframe du kan sandkasse det uklarerte innholdet og fortsatt vise det på siden. Bloggkommentarer er et eksempel. De fleste blogger tilbyr bare et begrenset antall HTML-tagger som kommentatorer kan bruke i sine kommentarer. Men ved å plassere disse kommentarene i en sandkasse iframe bruker srcdoc attributt, kan kommentarene være mer robuste samtidig som de beskytter nettstedet som helhet.



Sikkerhet og iframes

De to ovennevnte attributtene gir sikkerhet for din iframe elementer, men de er ikke et forsvar mot alle skadelige nettsteder. Hvis det skadelige nettstedet kan overbevise de besøkende på nettstedet om å få tilgang til det fiendtlige innholdet direkte (for eksempel ved å skrive inn URL-en i nettleseren deres), kan de fortsatt bli angrepet.

Hvis du kan, angi innholdet som er i sandkassen iframe som tekst/html-sandboxed MIME-type.



Det 'sømløse' attributtet

De sømløs attributt er et boolsk attributt som forteller nettleseren å vise iframe som om det var en del av det overordnede dokumentet. Hvis du vil ha din iframe for å vise sømløst, bare ta med dette attributtet i elementet:

|_+_|

Men å lage iframe sømløs er mer enn bare utseendet, det er også hvordan siden samhandler med rammen. Noen tips:



  • Lenker i iframe vil åpne i det overordnede vinduet med mindre iframe siden har målet '_SELF' satt.
  • CSS i iframe vil bli lagt til kaskaden av hele dokumentet.
  • Rotelementet til iframe siden anses som et barn av iframe .
  • Bredden og høyden på iframe er satt på samme måte som hvordan andre blokknivåelementer ville bli satt.
  • Når det overordnede dokumentet vises av et talegjengivelsesverktøy som en skjermleser, iframe vil bli lest uten å kunngjøre det som et eget dokument.

Eventuelle skript på det overordnede dokumentet vil påvirke iframe dokumentere på samme måte. For eksempel, hvis et skript listet opp alle rammene på siden, vil koblingene i iframe vil også være oppført.

Med andre ord sømløs attributt gjør mye mer enn bare å fjerne grensene fra iframe . Hvis du skal sette en iframe for å være sømløs, bør du være veldig sikker på innholdet slik at du ikke legger noen sikkerhetsrisiko til nettstedet ditt ved å bygge inn et ondsinnet nettsted.