Ynhâld, feiligens en designattributen foar IFRAME
It elemint lit jo kinne jo websteeën direkt yn jo webside ynstelle. Mar as it gebrûk fan iframes is, binne guon feiligens en ûntwerpproblemen dy't net yn HTML 4.01 behannele binne. HTML5 bringt trije nije attributen nei dit elemint om te helpen oan dizze oandachtspullen:
De sânbakstikken
It sânfak-attribút fan it elemint fan IFRAME is in tige brûkbere feiligensfunksje fan iframes. As jo dit yn in elemint fan IFRAME pleatse, brûke jo de brûkers-agent oan om funksjes te ferwiderjen dy't in feiligensrisiko opmeitsje kinne oan de side en har brûkers.
Bygelyks:
Ferplichtet de blêder om alle funksjes te ferlienen dy't in feiligensrisiko wêze kinne. Spesifyk plugins wurde net ferplicht. Formulieren kinne net ynstjoerd wurde. Scripts sille net rinne en keppelings bûten de IFRAME binne net tastien. Lêstich tagong is tagong ta cookies, lokale opslach en oare siden op deselde domein (oarsprong) binne net tastien.
Dan kinne jo gebrûk meitsje fan skaaimerk-kaaiwurden, jo kinne inkele fan 'e funksjes werneame. Dizze kaaiwurden binne:
- formulier foar foarljochting - allinich formulier foarwerp
- Stel dat -elde-oarsprong -folslein skripts om tagong te krijen ta ynhâld as cookies fan deselde komôf domein
- Ljepper-skripts -folslein skripts om yn dizze IFRAME te rinnen
- Allinne de IFRAME-keppelings en skripts nei it _top-doel
It is net in goeie idee om de tagongskripten en tagelyk-oarspronklike kaaiwurden op deselde IFRAME te setten. As jo dit dogge, dan kin de ynbêde pagina dan it sânkoffer-attribút folslein fuortsmite, wat gjin befeiligingsfoardielen ferneatigje.
De srcdoc-attribúsje
It attribút srcdoc is in attribút dat de webûntwerper mear kontrôle jout oer de iNrames as ek mear feiligens. Ynstee fan in keppeling nei in webside op in oare URL, sette de webûntwerper de HTML dy't yn in IFRAME binnen it srcdoc-attribje te sjen is.
Earst kinne jo tinke: "Hoe kin dit oars as it HTML- rjochts op 'e side sette?" En op guon manieren is it net sterk oars.
Mar jo moatte ien fan 'e funksjes fan' e IFRAME-elemint achtsje, hokker ûntrustige gegevens apart wurde moatte fan 'e rest fan' e side.
Troch it pleatsen fan HTML dat troch in ûntrêstige boarne makke wurdt, lykas in formulier, yn in IFRAME kinne jo "ûntsleinje" de untrustige ynhâld sjogge en noch op 'e side sjen. Kommentaar berjochten binne in foarbyld. De measte blogs hawwe mar in beheind tal fan HTML-tags kommentaren kin brûke yn har kommentaar. Mar troch dizze kommentaren yn in sânkorrekt IFRAME te brûken mei it srcdoc-akkount, kinne de kommentaren stipe wurde, wylst de side as gehiel beskermje sil.
Feiligens en Iframes
De boppesteande attributen biede feiligens foar jo IFRAME-eleminten, mar se binne gjin bewiis foar alle besefige siden. As it skildige side in brûker oertsjûget kin jo tagelyk tagonklik meitsje fan de hostile ynhâld (lykas troch de URL yn har browser te typen) kinne se oanfallen wurde.
As it mooglik is it bêste om de ynhâld te setten dat yn 'e sânbefeilige IFRAME is as it tekst / html-sandboxed MIME-type.
De seamless Attribute
It seamless-attribút is in boolean-attribute dy't de blêder fertelt om de IFRAME te lêzen as wier it in diel fan 'e oerlissend dokumint. As jo wolle dat jo IFRAME seamlessen werjaan, selektearje dit attribút yn it elemint:
Mar it meitsjen fan IFRAME-seamless is mear dan allinich it look, it is ek hoe't de side mei it frame ynterakt is. Bygelyks:
- Ferwizings yn 'e IFRAME sille iepenje yn it âlderfinster, útsein de IFRAME side hat it doel _SELF ynsteld.
- CSS yn 'e IFRAME sil tafoege wurde oan' e kaskade fan it folsleine dokumint.
- It root-elemint fan 'e IFRAME-side wurdt beskôge as in bern fan' e IFRAME.
- De breedte en hichte fan 'e IFRAME wurde op in simdele mode ynsteld op hoe oare oare eleminten opnommen wurde.
- Wannear't it parentdokumint besjoen wurdt troch in spesjale rendering-ark as in skermlêzer, soe de IFRAME lêzen wurde sûnder dat it as in aparte dokumint te melden.
- Elk skripts op 'e âlderde dokumint soe ynfloed op it IFRAME-dokumint op deselde wize. Bygelyks, as in skript alle frames op 'e side ljeppe, wurde de keppelings yn' e IFRAME ek holden.
Mei oare wurden, it seamless-attribút makket in soad mear as just de grins fan 'e IFRAME wiskje. As jo in IFRAME ynsteld wurde om seamless te wêzen, moatte jo gewoan wis fan wêze fan de ynhâld dat jo gjin feiligensrisiko oan jo webside tafoegje troch in ferkearde side te ynbieden.