Maudhui, usalama na sifa za kubuni kwa IFRAME
Kipengele kinakuwezesha kuingiza kurasa nyingine za Wavuti moja kwa moja kwenye ukurasa wako wa wavuti. Lakini wakati wa kutumia iframes kuna baadhi ya masuala ya usalama na kubuni ambayo hayajaingiliwa katika HTML 4.01. HTML5 huleta sifa tatu mpya kwa kipengele hiki ili kusaidia kushughulikia matatizo haya:
Sandbox Tabia
Kipengele cha sandbox cha kipengele cha IFRAME ni kipengele muhimu cha usalama cha iframes. Unapoiingiza katika kipengele cha IFRAME, unaamuru wakala wa mtumiaji kupinga marudio ambayo yanaweza kusababisha hatari ya usalama kwenye tovuti na watumiaji wake.
Kwa mfano:
Inauliza kivinjari kukataa sifa zote ambazo zinaweza kuwa hatari ya usalama. Hasa, mipangilio haitakiwi. Fomu haziwezi kuwasilishwa. Scripts hazitatumika na viungo nje ya IFRAME hairuhusiwi. Hatimaye, upatikanaji wa kuki, hifadhi ya ndani na kurasa zingine kwenye uwanja huo (asili) haziruhusiwi.
Kisha, kwa kutumia maadili ya nenosiri la sanduku, unaweza kuwezesha tena baadhi ya vipengele. Maneno haya ni:
- kuruhusu-fomu -ruhusu fomu ya kuwasilisha
- kuruhusu-sawa-asili -allow scripts kupata maudhui kama cookies kutoka uwanja huo asili
- kuruhusu-scripts -ruhusu scripts ili kukimbia katika IFRAME hii
- kuruhusu-juu-urambazaji - ruhusu viungo vya IFRAME na maandiko kwenye lengo la _top
Sio wazo nzuri kuweka salama zote za kuruhusu na kuruhusu maneno muhimu ya asili pamoja kwenye IFRAME sawa. Ikiwa unafanya hivyo, ukurasa ulioingia unaweza kuondoa kabisa sifa ya sanduku, kukataa faida yoyote ya usalama.
Tabia ya srcdoc
Tabia ya srcdoc ni sifa ambayo inatoa mtengenezaji wa Mtandao zaidi kudhibiti juu ya iframes pamoja na usalama zaidi. Badala ya kuunganisha kwenye ukurasa wa wavuti kwenye URL tofauti, mtengenezaji wa wavuti huweka HTML inayoonyesha kwenye IFRAME ndani ya sifa ya srcdoc.
Mara ya kwanza, huenda unafikiria, "Je, hii ni tofauti gani na kuweka HTML haki katika ukurasa?" Na kwa namna fulani, si tofauti kabisa.
Lakini unapaswa kukumbuka moja ya kazi za kipengele cha IFRAME, ambacho ni kuweka data isiyoweza kutengwa na tofauti ya tovuti.
Kwa kuweka HTML ambayo imeundwa na chanzo kisichoweza kukamilika, kama fomu, ndani ya IFRAME unaweza "sanduku" maudhui yasiyotumiwa na bado uionyeshe kwenye ukurasa. Maoni ya blogu ni mfano. Blogu nyingi zina idadi ndogo tu ya vitambulisho vya HTML ambazo watazamaji wanaweza kutumia katika maoni yao. Lakini kwa kuweka maoni hayo katika IFRAME ya sandboxed kwa kutumia sifa ya srcdoc, maoni yanaweza kuwa imara zaidi wakati bado inalinda tovuti nzima.
Usalama na Iframes
Tabia mbili hapo juu hutoa usalama kwa vipengele vyako vya IFRAME, lakini sio ushahidi dhidi ya maeneo yote mabaya. Ikiwa tovuti mbaya inaweza kumshawishi mtumiaji kufikia maudhui ya chuki moja kwa moja (kama vile kuandika URL kwenye kivinjari chao) bado wanaweza kushambuliwa.
Ikiwezekana ni bora kuweka maudhui yaliyo kwenye IFRAME ya sandboxed kama aina ya MIME / html-sandboxed.
Sifa isiyokuwa imefumwa
Tabia isiyokuwa imefumwa ni sifa ya boolean inayoelezea kivinjari ili kuonyesha IFRAME kama ingawa ni sehemu ya waraka wa mzazi. Ikiwa unataka IFRAME yako ionyeshe kwa ukali, ingatia tu sifa hii katika kipengele:
Lakini kufanya IFRAME imefumwa ni zaidi ya tu kuangalia, ni pia jinsi ukurasa unaingiliana na sura. Kwa mfano:
- Viungo katika IFRAME vitafungua kwenye dirisha la wazazi , isipokuwa ukurasa wa IFRAME una lengo _SELF iliyowekwa.
- CSS katika IFRAME itaongezwa kwenye msimbo wa hati nzima.
- Kipengele cha mizizi cha ukurasa wa IFRAME kinachukuliwa kuwa mtoto wa IFRAME.
- Upana na urefu wa IFRAME huwekwa kwa namna sawa na jinsi vipengele vingine vya kuzuia vipengee vinavyowekwa .
- Wakati hati ya mzazi inatazamwa na chombo cha utoaji wa hotuba kama msomaji wa skrini, IFRAME itasomewa bila kuitangaza kama hati tofauti.
- Maandiko yoyote juu ya hati ya mzazi yangeathiri hati ya IFRAME kwa njia ile ile. Kwa mfano, ikiwa script imeorodhesha muafaka wote kwenye ukurasa, viungo vya IFRAME pia vichaguliwa.
Kwa maneno mengine, sifa ya imefumwa ina mengi zaidi kuliko tu kuondoa mipaka kutoka kwa IFRAME. Ikiwa unataka kuweka IFRAME kuwa imefumwa, unapaswa kuwa na hakika sana ya yaliyomo ili usiongeze hatari yoyote ya usalama kwenye tovuti yako kwa kuingia kwenye tovuti zisizofaa.