Form authentication

martedì 12 maggio 2009 - 15.31

bolla111 Profilo | Senior Member

ciao a tutti...problemino..
io per autenticare un utente faccio:

FormsAuthentication.RedirectFromLoginPage(username, True) FormsAuthentication.SetAuthCookie(username, False)

e fin qui nessun problema...
ora io ho aggiunto un if in base al quale se la condizione viene verificata vengono eseguite le istruzione postate sopra, altrimenti voglio che venga effettuata una redirect ad un'altra pagina (anch'essa protetta, quindi l'utente deve loggarsi)...
solo che con una normale response.redirect non funziona, ma ritorna alla form di login...
come devo fare?

rossimarko Profilo | Guru

Ciao,

da quello che dici sembra che il problema sia dovuto al fatto che non hai messo nei permessi un filtro per la tua seconda pagina di login (devi lasciare abilitato l'accesso anche agli utenti anonimi)

I permessi vengono impostati attraverso il tag authorization del web.config.

-----------------------------------------
Rossi Marco
http://blogs.dotnethell.it/rossimarko

bolla111 Profilo | Senior Member

gli utenti non sono anonimi...
ti spiego...ogni utente è salvato in un record di una tabella di db...la condizione è dovuta ad una data, contenuta nel record dell'utente loggato...in pratica questa data non deve superare un certo valore...se la supera invece che fare questa:
FormsAuthentication.RedirectFromLoginPage(username, True)
fa questa:
response.redirect(pagina.aspx)
solo che non funziona...penso perchè facendo la redirectfromloginpage viene a crearsi il cookie e queindi l'utente viene loggato, mentre con la normale redirect no...

rossimarko Profilo | Guru

Hai provato a fare la cosa manualmente?

Quindi autenticare tu l'utente con
FormsAuthentication.SetAuthCookie(username, False)

e poi gestire il redirect andando a prelevare l'url dal querystring come se fosse un parametro normale.

Una volta preso il parametro fai il redirect normale: Response.Redirect(urlProvenienza)
-----------------------------------------
Rossi Marco
http://blogs.dotnethell.it/rossimarko

bolla111 Profilo | Senior Member

ho pensato infatti di usare FormsAuthentication.SetAuthCookie(username, False)... però non sapevo come fare la redirect...pui spiegarmi un poco meglio? grazie...


asp...ce l'ho fatta...io prima facevo la redirect...e poi mettevo setauthcookie...invertendoli funziona...
mi stupisco a volte di come faccio a perdermi via...


ciao

rossimarko Profilo | Guru

A posto così allora
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5