Una semplice area di accesso riservato senza DB

Analizziamo in questo Tip un semplice metodo per realizzare un'area di accesso riservato senza ricorrere ad alcun database, come rimarcato nella lezione del manuale di Asp Oggetto Session

Utilizzeremo un semplice modulo Html per permettere il login, immaginiamo di essere i soli sul nostro sito ad avere accesso a determinate informazioni contenute in determinate pagine; creiamo all'interno della cartella privata il file index.asp:

<%@LANGUAGE = JScript%>
<html>
 <head>
  <title>Area privata</title>
 </head>
<body>

<form method="post" action="login.asp">
   Username<br>
   <input type="text" name="username"><br>
   Password<br>
   <input type="password" name="password"><br>
   <input type="submit" value="Login">
</form>

</body>
</html>

Passo secondo, inviamo il modulo al file login.asp, utilizzeremo come username admin, e come password prova:

<%@LANGUAGE = JScript%>
<%
// RECUPERO I DATI DAL MODULO
   var username = new String(Request.Form("username"));
   var password = new String(Request.Form("password"));

// QUI SPECIFICO LA USERNAME E LA PASSWORD
   if ((username != "
admin") || (password != "
prova")) {
        Response.Write("ACCESSO NEGATO");
        Response.End;
   }
   else {
// CREO LA SESSIONE ATTRIBUENDOLE IL VALORE DELL'UTENTE LOGGATO
// IN QUESTO CASO SI TRATTA DI UN UTENTE STATICO, 
MA LA TECNICA E' QUESTA
        Session("username") = username;
        Response.Redirect("privata.asp");
   }
%>

Il file privata.asp č considerabile come la reale Homepage dell'area riservata:

<%@LANGUAGE = JScript%>
<%
   if (Session("username") == null) {
       Response.Write("ACCESSO NEGATO");
       Response.End;
   }
%>
<html>
 <head>
  <title>Area privata</title>
 </head>
<body>

... CONTENUTO DELL'AREA PRIVATA ... ... ...

<a href="logout.asp">LOGOUT</a>

</body>
</html>

Tutti i file facenti parte dell'area riservata devono contenere il codice evidenziato in rosso prima di qualsiasi Tag Html, in modo da inibire l'accesso qualora la sessione fosse nulla; supponiamo che da questa pagina fosse possibile anche effettuare il logout, creiamo quindi un link verso il file logout.asp:

<%@LANGUAGE = JScript%>
<%
   Session.Abandon();
%>
<html>
 <head>
  <title>Area privata</title>
 </head>
<body>

<div align="center">ARRIVEDERCI!!!</div>

</body>
</html>

Autore: Luca Ruggiero