Salve,
mi occupo da poco di aspnet. Sto costruendo il modulo di autenticazione di un'applicazione basato sulla forms authentication. Ho impostato il web.config in modo da usare tale metodo di autenticazione, ho negato gli accessi agli utenti anonimi, ho costruito un semplice form con login e password per provare le cose. L'evento del click sul pulsante di login è gestito normalmente:
Tutto sembra funzionare normalmente...se provo ad accedere ad una pagina del sito ho un redirecting alla pagina di login dopo la quale ritorno alla pagina originale che avevo richiesto. Ciò che mi sembra strano è che se invece accedo direttamente alla pagina di login questa mi viene mostrata nuovamente così com'è come se dovessi fare il login per la prima volta mentre mi sarei aspettato un redirecting automatico alla pagina di default visto che l'utente è già autenticato.codice:if(CheckCredential(UsernameTextBox.Text, PasswordTextBox.Text)) { //l'utente esiste FormsAuthentication.RedirectFromLoginPage(UsernameTextBox.Text, false); } else LoginLabel.Text = "Invalid username/password. Try again.";
Questo è il comportamento normale del meccanismo di autenticazione tramite forms o ho impostato male io lqualcosa? Per verificare che in effetti il cookie di autenticazione arrivi correttamente ho inserito il seguente codice nell'evento di Page_Load della pagina di login:
cioè se l'identità è stata stabilita eseguo un redirecting manuale. Quindi il cookie di autenticazione arriva correttamente quando richiedo la pagina di login. Cosa potete dirmi in proposito? Ciao e grazie.codice:protected void Page_Load(object sender, EventArgs e){ if(Request.IsAuthenticated) FormsAuthentication.RedirectFromLoginPage(User.Identity.Name, true); }

Rispondi quotando