Ciao a tutti,
come scrissi già in un altro post, sono in progettazione di un portale (con pretese molto alte) e sto lavorando alla parte di login (che per ora considero la più importante).
Credo di essere arrivato ad un buon punto nella progettazione di questa parte, solo che continuo a pormi delle domande sullo stesso argomento... La sicurezza.
Allora, per ora il progetto prevede le sessioni classiche (avrò un server dedicato, fisicamente avremo accesso solo io ed il grafico, quindi non credo ci siano problemi eccessivi nel registrare le sessioni su filesystem anzichè su DB (inoltre ho ancora un dubbio molto grosso sulle sessioni su DB)).
Il funzionamento sarebbe il seguente
Primo accesso:
- L'utente si collega al sito per la prima volta.
- Viene avviata una sessione
- Viene registrata la variabile di sessione 'userid' con valore '0'
- Viene storata su DB l'associazione 'userid'-'session_id' con i dati che mi possono servire sulla sessione, es: LastAccess, BrowsingPage ... [Questo servirebbe per pagine come who is online ecc.]
Cambio pagina:
- Check sessione avviata con esito positivo
- Check su DB se sono presenti sessioni avviate con 'userid' storato nella sessione e 'session_id' (Serve per utenti loggati, quando userid è != '0', per evitare copie di SID)
LogIn:
- Settato 'userid' nella sessione col valore dell'utente
- Storati 'userid' e 'sessionid' nel DB
Ora... Due domande:
1- Avevo pensato di rigenerare il session_id ad ogni accesso di pagine in modo da renderlo difficile da copiare.
2- Come procedere con un utente che sceglie l'accesso persistente? In questo caso si rende necessario l'utilizzo dei Cookies... Solo che non saprei come procedere.
Avevo pensato di rigenerare appunto il session_id e storarlo ogni volta nel cookie e fare l'accesso con l'associazione userid - last_session_id anzichè userid - password, in questo modo sarebbe come se ad ogni accesso venisse rigenerata una pseudo-password casuale.
Questo check verrebbe effettuato solo una volta, poi il resto del browsing verrebbe gestito dalle sessioni...
Che ne pensate?
Sto sclerando su questo argomento -_-;;;