|

PROTEGGERE DEI FILE CON NOME UTENTE E PASSWORD

Nelle
precedenti sezioni abbiamo nominato l’oggetto ‘session’
che è un altro modo per passare informazioni da un file
asp all’altro. In tale oggetto possiamo memorizzare
informazioni che restano presenti per tutta la durata
della navigazione dell’utente sul nostro sito (di default
dura 20 minuti) o in alternativa, per un tempo che fissiamo
noi.
Vediamo
come utilizzare utilizzare tale ‘session’ per proteggere
un file (che naturalmente deve essere in formato asp).
Utilizzeremo
quindi quattro file: verifica.htm, controlla.asp, accesso_negato.htm,
protetta.asp
Come
username utilizziamo ‘prova’ e come password ‘amicopc’
(entrambi senza apici).
VERIFICA.HTM
E’
un semplice file html che contiene un modulo con due
campi di testo a riga singola: il primo campo si chiamerà
‘form_user’ e servirà per inserire il nome utente;
il secondo file si chiamerà invece ‘form_pwd’
e servirà per l’inserimento della password.
Tale
modulo dovrà far riferimento al file ‘controllami.asp’
Il
file verifica.htm dovrebbe avere il seguente codice
|
<form
method="POST" action="controllami.asp">
<p><input type="text" name="form_user" size="20"></p>
<p><input type="password" name="form_pwd"
size="20"></p>
<p><input type="submit" value="Invia" name="B1"><input
type="reset" value="Reimposta" name="B2"></p>
</form>
|
ACCESSO_NEGATO.HTM
Anche
in questo caso si tratta di un semplice file html: riprendiamo
e modifichiamo leggermente il file ‘verifica.htm’. Infatti
teniamo la stessa struttura del modulo aggiungendo solo
l’avvertimento che ‘il nome utente o la password sono
sbagliati’.
Il
codice diventa
| <form
method="POST" action="controllami.asp">
<p
align="center">Attenzione! </p>
<p
align="center">Nome utente o password
non corretti!</p>
<p
align="center"> </p>
<p
align="center"><input type="text"
name="form_user" size="20"></p>
<p
align="center"><input type="password"
name="form_pwd" size="20"></p>
<p
align="center"><input type="submit"
value="Invia" name="B1"><input
type="reset" value="Reimposta"
name="B2"></p>
</form>
|
CONTROLLAMI.ASP
Una
volta inseriti nome utente e password e premuto il pulsante
‘invia’ viene caricato il file ‘controllami.asp’.
Per
prima cosa dobbiamo prendere dal modulo i dati relativi
al nome utente e alla password inseriti
|
<%
dim
user
dim
pwd
user=replace(request.form("form_user"),"'","''")
pwd=replace(request.form("form_pwd"),"'","''")
|
A
questo punto, mediante la funzione ‘if... then... end
if’ verifichiamo che lo username e la password corrispondano
a quelle che abbiamo deciso noi. Nel caso in cui lo
username sia diverso da ‘prova’, l’utente verrà reindirizzato
su una pagina di errore. Non
viene fatta distinzione tra lettere maiuscole e minuscole.
|
if
user <>"prova" then
response.redirect("accesso_negato.htm")
end
if
|
Allo
stesso modo per quanto riguarda la password (che è ‘amicopc’)
|
if
pwd <> "amicopc" then
response.redirect("accesso_negato.htm")
end
if
|
Nel
caso in cui invece l’utente abbia inserito il nome utente
e la password corretti, creiamo un oggetto session che
chiamato ‘verificato’ e gli assegniamo ‘si’ come valore
|
session("verificato")
= "si"
|
A
questo punto carichiamo la pagina ‘protetta.asp’
|
response.redirect("protetta.asp")
%>
|
PROTETTA.ASP
Finalmente
viene caricata la pagina protetta da username e password
La
prima cosa da fare è controllare che la session ‘verificato’
abbia ‘si’ come valore. Questo
significa che abbiamo passato con successo la verifica
del nome utente e della password. Nel
caso in cui la session abbia un valore diverso da ‘si’,
visualizziamo una pagina di errore (‘accesso_negato.htm’).
Pertanto
avremo
|
<%
if
session("verificato") <> "si"
then
response.redirect("accesso_negato.htm")
|
Nel
caso in cui invece la il valore della session sia corretto,
visualizziamo correttamente la pagina
Qui
di seguito inseriamo il codice html o asp che compone
la pagina.
Per
esempio
|
%>
<p
align="center"><font face="verdana"
size="2"><b>Benvenuto!</b><br>Vedo
con piacere che hai inserito<br>correttamente
il nome utente e la password</font></p>
|
Per
finire chiudiamo la funzione ‘if... then... else...
end if’ che abbiamo introdotto all’inizio della pagina.
|