Flusso di controllo dell'autenticazione basata su form
Aggiornamento: novembre 2007
Nella tabella riportata di seguito viene illustrato il flusso di controllo relativo all'autenticazione basata su form di ASP.NET.
Operazione HTTP e browser |
Risposta del server |
---|---|
Richiede una risorsa protetta su un server. L'operazione HTTP è:
|
Se non sono presenti cookie di autenticazione, reindirizza la richiesta a una pagina di accesso per raccogliere le credenziali. Le informazioni relative alla pagina di origine vengono posizionate nella stringa di query utilizzando RETURNURL come chiave. La risposta HTTP del server è:
|
Segue il reindirizzamento alla pagina di accesso. L'operazione HTTP è:
|
Restituisce la pagina di accesso. Per garantire la protezione, è consigliabile utilizzare il protocollo SSL (Secure Sockets Layer) per la pagina di accesso in modo da impedire che le credenziali dell'utente vengano inviate in testo non crittografato. La risposta HTTP del server è:
|
Dopo che l'utente ha immesso le credenziali nella pagina di accesso, invia la pagina. L'operazione HTTP è:
|
Convalida le credenziali utente e, se tali credenziali vengono autenticate, reindirizza il browser all'URL originale specificato in QueryString come variabile RETURNURL. Per impostazione predefinita, il ticket di autenticazione viene rilasciato sotto forma di cookie.
Nota:
È possibile specificare che il ticket di autenticazione sia incluso nell'URL anziché in un cookie mediante la proprietà CookieMode.
La risposta HTTP del server è:
|
Segue il reindirizzamento e richiede nuovamente la risorsa originale. L'operazione HTTP è:
|
Se l'utente è autenticato, concede l'accesso e il cookie di autenticazione contenente un ticket di autenticazione. Le successive richieste della stessa sessione del browser verranno autenticate quando il modulo consente di esaminare il cookie. È possibile creare un cookie permanente da utilizzare per le sessioni future, ma solo fino alla data di scadenza del cookie. La risposta HTTP del server è:
Il percorso del cookie è impostato su /. La distinzione tra maiuscole e minuscole osservata nei nomi dei cookie consente di evitare incoerenze negli URL sul sito. Se ad esempio il percorso è impostato su /SavingsPlan e il collegamento contiene /savingsplan, l'utente dovrà eseguire nuovamente l'autenticazione in quanto il browser non consente l'invio del cookie. |