siccome mi capita spesso di gestire il login degli utenti al sito volevo sapere qual'è il modo piu sicuro per gestire la sessione di navigazione dell'utente autenticato.
strolicando un po ho pensato a questo:
1)login: tramite un javascript faccio l'hash md5 o sha1 della password ed eventualmente anche del nome utente e le invio alla pagina di elaborazione del login via post .
2)la pagina di login fa quello che deve fare e in caso di user/psw corrette crea un record nella tabella "sessioni" del database associato al sito e salva: ip utente, id sessione, codice casuale(poi spiego a cosa serve), ora del login, id utente
3) crea una variabile di sessione in cui salva il codice casuale(pensato inizialmente per distinguere gli utenti nattati che figurano con lo stesso ip, ad esempio che provengono dalla stessa lan)
4) ad ogni pagina faccio il controllo incrociato codice casuale/session id/ip utente tra i dati del db e quelli che leggo dal client con le apposite funzioni.
se ovviamente mi viene restituito un record vuol dire che l'utente si era già loggato e di conseguenza lo tratto da loggato.
poi attraverso l'ora di login, se un utente non si slogga(cancellando il suo record di sessione), faccio in modo che dopo X minuti il record venga cancellato automaticamente per inattività...
può andare?