Login in c# con database

lunedì 23 giugno 2008 - 17.56

Anonimo Profilo | Senior Member

Salve, avete delle idee come fare dei login per l'autenticazione degli utenti e caricare delle sessioni tipo username , livello, ruolo etc.?.

Sto imparando adesso ado.net , ma ora sto faccendo un'area privata con mysql odbc,
Mi riesce tutto si insert/update e delete questo dopo un pò di mesi c'è lo fatta a capire.

Ma ora viene il problem come fare un login con la registrazione degli utenti al volo e usando il database, senza usare il wizard di visual studio?.

voi avete idee?.

grazie.

Wamba Profilo | Expert

Ciao,
vuoi sapere un modo alternativo alla gestione dei ruoli di asp.net o solo un metodo per non usare il wizard?
-----------------------------------------------------------
Solo chi ha il Caos dentro può generare una stella danzante
Wamba
http://blogs.ugidotnet.org/WamBlog/
http://www.intellimaker.com

Anonimo Profilo | Senior Member

si, voglio sapere come si facceva nelle vecchie pagine asp 3.0, ma vorrei farlo in asp.net senza l'uso della wizard di asp.net.

ok?.

comunque se vedete ogni volta che posto i post doppi, è perche quando faccio invio post , mi ci sta troppo e poi devo fare f5 e lui lo scrive.
non so come mai? , uso firefox 3 , ma me lo faceva anche in firefox 2.x

Anonimo Profilo | Senior Member

ad esempio, quello che ho visto nel tuo blog:
tipo:


1: protected void Button1_Click(object sender, EventArgs e)

2: {

3: HttpCookie cookie = new HttpCookie("UserName");

4: cookie.Value = TextBox1.Text;

5: cookie.Expires = DateTime.Now.AddDays(1);

6: Response.Cookies.Add(cookie);

7: Response.Redirect("WebForm2.aspx");

8: }

Melo protesti sipegare come fare le area riservate.

Wamba Profilo | Expert

Vediamo come progettare questa cosa:
1) Ti serve un posto dove salvare i dati: un DB è l'ideale
2) Costruire una tabella con: Id univoco dell'utente, login, HASH della password (possiamo anche salvare la password, ma non risulterebbe corretto per gli utenti anche se semplificherebbe la procedura di login) + Tutti gli altri dati che ti servono sull'utente (puoi anche metterli in un'altra tabella).
3) Creare una classe da mettere sotto la cartella APP_CODE che estende la classe Page chiamiamola "ProtectedPage". Sarà la classe base per tutte le pagine protette.
4) Scrivere 1 metodo nella classe "ProtectedPage" che restituisca true se l'utente è loggato false altrimenti checkUser.
5) Overload del metodo onpreinit di "ProtectedPage" chiamata del metodo checkUser e se l'utente non è loggato redirect alla pagina di login
6) Pagina di login: deve accettare user e password. Se hai deciso di salvare l'hash della password trasformi la password in un hash o, se vuoi aumentare la sicurezza, trasformi in hash una combinazione di user + password. Verifichi sul db con una semplice query e ti fai restituire l'id.
Se non hai risulati l'utente non è registrato o ha sbagliato password, altriementi esegui il login. A questo punto devi salvarti da qualche parte se l'utente ha effettuato la login. Puoi decidere di salvarlo nella cache del browser, nei cookie e/o nelle variabili di session (in base a questo cambia il metodo checkUser di ProtectedPage.
7) Avrai bisogno di una pagina/procedura per far registrare gli utenti.
8) Nel codebehind di tutte le tue pagine protette cambi la classe da cui derivano da Page in ProtectedPage, oppure se non usi il codebehind modifichi la direttiva <@Page >

Spero di essere stato chiaro: se hai dei dubbi chiedi pure.

-----------------------------------------------------------
Solo chi ha il Caos dentro può generare una stella danzante
Wamba
http://blogs.ugidotnet.org/WamBlog/
http://www.intellimaker.com

Anonimo Profilo | Senior Member

ok, grazie per la spiegazione.
Ora mi metto al lavoro.
scusa se ti rispondo ora, ma ero via.

ciao e grazie mille.

Wamba Profilo | Expert

Fammi sapere com'è andata.
Diego
-----------------------------------------------------------
Solo chi ha il Caos dentro può generare una stella danzante
Wamba
http://blogs.ugidotnet.org/WamBlog/
http://www.intellimaker.com

Anonimo Profilo | Senior Member

scusa, tanto...

ma mi sono messo ad studiare vb.net, perchè io provengo da asp3.

Ed cosi mi è più semplice da fare, perchè c# lo conosco poco poco.

Mi protesti dire come fare per vb.net ?.

Che cosa devo documentarmi , per caso datareader e httpcookie?.

grazie e scusa,

ma non ho avuto più il notebook fino ad ieri perchè era ad riparazione ram.

grazie.
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