Proteggiamo le pagine ASP
Scritto da Davide Salonia
(http://www.daviduccio.it)
il 05 agosto 2006
Creiamo la connessione al database
Creiamo un recordset e selezionamo i campi “usname” e “passw” dalla tabella “tabella_utenti” e filtriamo per username e password richiesti
Adesso controlliamo che il recordset non sia vuoto, ovvero che username e/o password siano corretti. In caso siano corretti, verremmo indirizzati verso la pagina protetta, in caso contrario invece verso la pagina di errore
Creata dunque la sessione, veniamo reindirizzati verso la pagina protetta, che controllando l’esistenza della sessione, ci permette di visualizzare la pagina, altrimenti ci rispedisce verso la pagina di errore!
Salve, oggi vedremo come proteggere le nostre pagine avvalendoci delle Sessioni!
Prima di tutto, vediamo dove e come creare la Sessione di accesso alle nostre pagine protette:
La Sessione di accesso, deve essere creata durante il Login dell’utente, più precisamente, se l’utente che cerca di entrare esiste iscritto nei nostri databases, allora avviamo la sessione e diamo così accesso alle pagine protette, altrimenti li indirizziamo in una pagina di errore!
Creiamo adesso un Recordset di esempio che si aggancerà al database e verificherà l’esistenza degli utenti:
Recuperiamo la username e la password inviate con POST
CODICE
<% usr=Request.Form("username")
psw=Request.Form("password")Creiamo la connessione al database
CODICE
Set Conn=Server.CreateObject("ADODB.Connection")
strConn="Driver={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("/mdb-database/utenti.mdb")
Conn.Open strConnCreiamo un recordset e selezionamo i campi “usname” e “passw” dalla tabella “tabella_utenti” e filtriamo per username e password richiesti
CODICE
sql = "SELECT usname,passw FROM tabella_utenti WHERE usname='"&replace(usr,"'","''")&"' AND passw='"&replace(psw,"'","''")&"'" Set rs = Server.CreateObject("ADODB.Recordset") rs.Open sql, conn ,3,3Adesso controlliamo che il recordset non sia vuoto, ovvero che username e/o password siano corretti. In caso siano corretti, verremmo indirizzati verso la pagina protetta, in caso contrario invece verso la pagina di errore
CODICE
if not rs.BOF then
session("ProtezioneDaviduccioSession")=usr 'Ecco dove abbiamo usato la sessione!
response.Redirect("pagina_protetta.asp")
else
response.redirect("pagina_errore.asp")
end if
%>Creata dunque la sessione, veniamo reindirizzati verso la pagina protetta, che controllando l’esistenza della sessione, ci permette di visualizzare la pagina, altrimenti ci rispedisce verso la pagina di errore!
