Programmazione.it v6.4
Ciao, per farti riconoscere devi fare il login. Non ti sei ancora iscritto? Che aspetti, registrati adesso!
Info Pubblicità Collabora Autori Sottoscrizioni Preferiti Bozze Scheda personale Privacy Archivio Libri Corsi per principianti Forum
Guida ad HTML5: l’API di messaggistica (2/8)
Scritto da Pellegrino Principe il 28-02-2011 ore 11:24
Intel Parallel Studio XE
Prima di affrontare lo studio sistematico della Web Messaging API diamo uno sguardo alle metodologie alternative, che permettono la comunicazione tra codice di scripting proveniente da pagine web risiedenti su domini differenti.

Iniziamo a parlare dell’embedding di codice JavaScript tramite il quale esso viene innestato direttamente nella pagina web che lo preleva. Questo codice risiede ovviamente in un host remoto differente e nel momento in cui viene caricato nel documento richiedente ne diventa parte integrante e ne condivide, avendone un pieno accesso, tutte le sue funzionalità. Chiaramente, quest’approccio, quantunque sia potente e flessibile, rappresenta per un utente un elevato rischio di sicurezza, soprattutto se non vi è la possibilità di verificare l’affidabilità del dominio di provenienza.

Dal punto di vista di un fornitore di tali script o librerie, invece, l’adozione di tale meccanismo potrebbe rilevarsi dispendioso economicamente perché, per garantire un servizio efficiente e scalabile, dovrebbe almeno disporre di domini differenti dai quali reperire il codice, e burocraticamente perché dovrebbe essere in grado di garantire all’utente che i servizi forniti attraverso tali script rispondano ad adeguate policy di privacy e sicurezza.

Un banale esempio di tale tecnica possiamo mostrarlo attraverso il seguente frammento di codice, caricato da una pagina web ospitata dal dominio http://localhost:99, che attraverso l’elemento script carica, nel suo contesto di esecuzione, del codice JavaScript presente però in un dominio differente come, ad esempio http://user1.com:81
  1. <!DOCTYPE html>
  2. <html lang="it">
  3. <head>
  4.     <meta charset="utf-8" />
  5.     <title>JavaScript direct embedding</title>
  6.     <script src="http://user1.com:81/javascript/newswidgets.js"></script>
  7.    ...
In tal caso dobbiamo considerare che, non essendoci nessun controllo sull’autenticità e affidabilità del dominio user1.com, il codice del file newswidgets.js potrebbe eseguire azioni fraudolente, quali: memorizzare i tasti premuti e i valori inseriti nelle caselle di testo; leggere il contenuto dei cookie, ecc., e poi successivamente spedire le informazioni raccolte verso dei server dove verrebbero immagazzinate per una disamina avente come scopo quello di compiere con esse operazioni illegali a danno dell’utente da cui sono state carpite.

Segue poi la metodologia definita come JSONP (JSON with Padding) attraverso cui si indica, nell’attributo src dell’elemento script, un URL di un dominio differente che ritornerà una stringa formattata in JSON, la quale verrà direttamente valutata e inserita nel contesto di esecuzione della pagina web che l’ha richiesta.
Precedente: Perl in latino
Successiva: Learning XNA 4.0
Copyright Programmazione.it™ 1999-2013. Alcuni diritti riservati. Testata giornalistica iscritta col n. 569 presso il Tribunale di Milano in data 14/10/2002. Pagina generata in 0.267 secondi.