Authentication mode="Forms"

giovedì 16 giugno 2011 - 17.20
Tag Elenco Tags  C#  |  .NET 3.5  |  Visual Studio 2008  |  SQL Server 2008 R2

Nicola Profilo | Senior Member

Ciao,

Sto sviluppando un'applicazione asp.net utilizzando la authentication mode="Forms"

la struttura del sito è così composta:

root
- Admin (dir)
- Auth_User (dir)
Default.aspx

La pagina Default.aspx è la pagina dove viene effettuato il login.

Nella cartella Admin vi sono pagine alle quali possono accedere sono gli utenti con ruolo Admin
Nella Auth_User vi sono pagine riservate a tutti gli utenti registrati.

Nell'applicazione ho la possibilità di cambiare runtime il mio ruolo tramite una dropdownlist. Il problema è che se sono in una delle pagine della cartella Admin e modifico il mio ruolo in modo da non essere più admin mi scade la sessione e vengo rediretto alla pagina di login.

Non esiste un modo per fare sì che io venga rediretto, ad esempio, nella pagina di default della cartella Auth_User senza farmi scadere la sessione?

Grazie

Gluck74 Profilo | Guru

Tecnicamente non saprei dirti con precisione, dovrei fare alcune prove....
ma approcciando al problema a livello logicio, perché un utente che è amministratore dovrebbe cambiarsi il proprio ruolo e diventare user?
L'apporccio potrebbe essere rivedibile.

Comunque sia, nella serie di articoli "A Better ASP.Net Member/Role Management"
(http://aspadvice.com/blogs/net_discoveries/archive/2008/09/29/A-Better-ASP.Net-Member_2F00_Role-Management-Page-Pt.-1.aspx)
ed in particolare nella parte 6, l'autore ha pensato di riscrivere quasi completamente le membership!!!!!!!!!!!!!!!!!!!

Forse trovi la tua risposta.

____________
Ricordati di utilizzare il tasto "Accetta" se i nostri consigli ti sono serviti a risolvere il problema.
È il modo per ringraziare chi ti ha aiutato.

Nicola Profilo | Senior Member

Grazie per la risposta.

Purtroppo l'approccio è l'unico possibile secondo le specifiche richieste dal cliente. Io ho descritto il problema semplificandolo al massimo che altrimenti avrei dovuto scrivere un intero manuale :D

Ma veramente non esiste un modo "facile" per gestire la cosa? Perchè io pensavo ad esempio, durante il reload della pagina scatenato dall'index changed della dropdownlist, di fare una verifica via codice della pagina attuale e del mio nuovo ruolo e nel caso il nuovo ruolo non abbia i permessi di accedere a quella pagina fare il redirect su una pagina di default.

Per dire, via codice non è possibile verificare se ho o meno i permessi per visualizzare una data pagina?
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-2017
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5