Qual è la differenza tra IFrame e Frame?


91

Guardando le opzioni per incorporare la pagina 3D Secure nel mio modulo d'ordine, mi sono imbattuto in quanto segue:

"Alcuni siti commerciali dedicheranno l'intera pagina del browser all'autenticazione piuttosto che utilizzare un frame (non necessariamente un iFrame, che è comunque un oggetto meno sicuro)."

da http://en.wikipedia.org/wiki/3-D_Secure

Qualcuno può spiegarmi il motivo per cui gli iframe sono meno sicuri e causano problemi, rispetto ai normali frame? E quali sono le differenze fondamentali?

Per come la vedo io, iframeè la strada da percorrere.


Dai un'occhiata qui .
Daniel Dušek

2
<frame>è deprecato in HTML5, quindi non dovresti più usarlo.
Michael Hays

Risposte:


64

La differenza è che un iframe è in grado di "fluttuare" all'interno del contenuto di una pagina, ovvero puoi creare una pagina html e posizionare un iframe al suo interno. Ciò ti consente di avere una pagina e inserire un altro documento direttamente in essa. A framesetconsente di dividere lo schermo in diverse pagine (orizzontalmente e verticalmente) e visualizzare diversi documenti in ogni parte.

Leggi il riepilogo sulla sicurezza di IFrames .


Non sembra che quei problemi di sicurezza si applichino a me, dato che farei riferimento direttamente a un sito sicuro (e uno di cui mi fido al 100%), quindi non vedi come un utente malintenzionato potrebbe sabotare questo?
Duncan

14

IFrame è solo un "frame interno". Il motivo per cui può essere considerato meno sicuro (rispetto al non utilizzare alcun tipo di frame) è perché puoi includere contenuti che non provengono dal tuo dominio.

Tutto ciò significa che dovresti fidarti di tutto ciò che includi in un iFrame o in un frame normale.

Frame e IFrame sono ugualmente protetti (e insicuri se includi contenuto da una fonte non attendibile).


Puoi includere anche contenuti che non provengono dal tuo dominio in frame regolari.
Quentin

@ David, probabilmente avrei dovuto dichiararlo esplicitamente. Immagino di averlo sottinteso, ma non l'ho mai detto veramente. Aggiornerò la mia risposta per renderlo più chiaro. Grazie!
Dan Herbert

la i nell'iframe in realtà sta per inline
Simon Zyx,

6

iframevengono utilizzati molto per includere pagine complete. Quando queste pagine sono ospitate su un altro dominio, si verificano problemi con lo scripting trasversale e altro. Ci sono modi per risolvere questo problema.

I frame sono stati utilizzati per dividere la pagina in più parti (ad esempio, un menu di navigazione a sinistra). Il loro utilizzo non è più consigliato.


"I frame sono usati per divinare la tua pagina in più parti. Come ad esempio un menu a sinistra." Gli anni '90 ti hanno chiamato e ti hanno restituito. Si dovrebbe non usare i frame per questo. Era comune farlo alcuni anni fa, ma ora dovresti usare la maggior parte del tempo include serveride e css per creare il tuo menu. Consente una flessibilità molto maggiore a lungo termine. velvetblues.com/web-development-blog/… ha alcune informazioni sull'argomento.
Esteban Küber

13
Lo so :) Volevo solo spiegare dove sono stati usati i frame (100 anni fa;))
Ivo

5

Le uniche ragioni a cui riesco a pensare sono in realtà nell'articolo wiki a cui hai fatto riferimento per menzionarne un paio ...

"Il sistema" Verified by Visa "ha suscitato alcune critiche, poiché è difficile per gli utenti distinguere tra la legittima finestra pop-up o inline frame di Verified by Visa e un sito di phishing fraudolento".

"a partire dal 2008, la maggior parte dei browser web non fornisce un modo semplice per controllare il certificato di sicurezza per i contenuti di un iframe"

Se leggi la sezione Critica nell'articolo, vengono descritti in dettaglio tutti i potenziali difetti di sicurezza.

Altrimenti l'unica differenza è il fatto che un IFrame è un frame inline e un Frame fa parte di un Frameset . Il che significa più problemi di layout che altro!


4

Inline frame è solo una "scatola" e puoi posizionarlo ovunque sul tuo sito. I frame sono un mucchio di "scatole" messe insieme per creare un sito con molte pagine.


-1

Sebbene la sicurezza sia la stessa, potrebbe essere più facile per le applicazioni fraudolente ingannare gli utenti che utilizzano un iframe poiché hanno maggiore flessibilità per quanto riguarda il posizionamento del frame.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.