Criptazione delle query string con ASP.NET
Una query string è solitamente un URL contenente dei parametri con relativi valori che il browser invia ad un'applicazione web (solitamente lato server). L'uso di tale tecnica per passare dati dal browser al server è piuttosto nota ed utilizzata. Tuttavia, concedere la possibilità agli utenti di modificare una query string "in chiaro", può costituire una minaccia alla sicurezza del vostro server.
Per questo motivo in quest' articolo si incoraggiano gli sviluppatori a criptare le query string, anche se queste non contengono dati confidenziali. Ovviamente ci sono ancora possibilità di modificare le query string, ma tramite un'appropriata gestione degli errori questa possibilità diviene innocua.
Per mantenere quest'articolo semplice, verrà usato l'algoritmo di criptazione DES, sebbene sia possibile sostituirlo facilmente con algoritmi più robusti.
Corsi online di WebMasterPoint.org:
Uno sguardo al codice
La parte principale della soluzione principale consiste in un modulo denominato HttpModule che decripta la query string e quindi soddisfa la richiesta del browser tramite un'ordinaria query string in chiaro:
Come potete aver notato, se c'è una query string criptata per la richiesta corrente, il modulo termina automaticamente l'esecuzione della pagina corrente e inizia internamente l'esecuzione di una nuova richiesta per il server.
Il prossimo passo consiste nel registrare il modulo HttpModule nel file web.config:
<httpModules>
<add name="CryptoQueryStringUrlRemapper"
type="SmartSoft.QueryStringEncryption.CryptoQueryStringUrlRemapper"/>
</httpModules>
Ultimo passo, non dobbiamo dimenticare di criptare le query string prima di spedirle indietro al server:
Come abbiam sottolineato in precedenza, la classe che gestisce la criptazione può essere facilmente rimpiazzara da una classe diversa con compito analogo.
N.B.: il metodo DecryptQueryStrings in CryptoQueryStringHandler contiene la seguente linea di codice:
return Encryption64.Decrypt(encryptedStrings.Replace(" ", "+"), key);
Per cause ignote, la richiesta rimpiazza ogni carattere '+' nella query con un carattere vuoto.
SCARICA IL CODICE (Licenza CPOL).
- Truffe conti correnti online: rubato 1 milione di euro a utenti italiani. Come chiedere rimborso.
La Polizia Postale di Perugia ha arrestato 17 persone accusate di aver organizzato una truffa telematica a danno di centinaia di correntisti italiani.
- Stipendi e curriculum dirigenti PA online ma non facilmente consultabili
- iPhone 4.0 con il multitasking: novità trapelate per il nuovo cellulare e iPad.
- Internet: offerta nuova da Tim per cellulari compreso iPhone da 2 euro o 69 euro all'anno.
- HTML 5 non è meglio di Flash secondo alcuni test condotti. Ed è iPad contro Slate.
- Script database, forum e rotazione banner (adRotator) in ASP download gratis
Nuovi script ASP da scaricare ed utilizzare totalmente gratuiti - Problemi Windows Live Messenger (MSN): come risolvere i più comuni con software gratis
- Windows 7: programmi e utility per usare al meglio sistema operativo. Download gratis.
- Scegliere un PC per lavoro, gioco o multimediale? Configurazioni, prezzi e consigli.
- Napolitano risponde online a 2 cittadini sul decreto salvaliste regionali mentre scoppia la protesta online


![[SPONSOR] 9NetWeb (Link Esterno)](http://www.webmasterpoint.org/sponsor/9netweb_120.gif)
![[SPONSOR] Aruba (Link Esterno)](/sponsor/aruba_90.gif)

Segnala questo articolo ai tuoi amici su Facebook
Stampa Pagina
Info sull'autore
ICQ
EMAIL
DISCUTI DI QUESTA LEZIONE SUL FORUM![[SPONSOR] eDomain (Link Esterno)](http://www.webmasterpoint.org/sponsor/edomain_120.gif)
![[SPONSOR] Rubalo (Link Esterno)](/sponsor/rubalo.gif)
![[SPONSOR] ConsultingWeb (Link Esterno)](/sponsor/consultingweb_120.gif)