PDA

View Full Version : [PHP] Ancora su sessioni & co.


packllama
03-03-2009, 17:07
Ho visto che sul forum qua e la se ne parlicchia, vorrei affrontare l'argomento di petto (l'altra discussione sull'autenticazione continua a seguire il suo percorso).

Siamo di fronte al problema di mantenere l'avvenuta autenticazione del navigante e dargli quel valore aggiunto che si merita.

Abbiamo un modulo di login, uno script per la verifica tramite un db MySQL e fin qui tutto bene. Se la verifica va a buon fine, inoltre, vengono impostati alcuni elementi dell'array $SESSION (ad esempio).

Cosa fare quando bisogna fornire funzionalitą aggiuntive agli iscritti? Come potrebbe essere un pannello utente, un menu aggiuntivo in ogni pagina, e via dicendo.


Ecco la mia personalissima idea in proposito.

Si genera un cookie con l'hash del nome utente e dell'indirizzo ip. Si crea una tabella nel db con i dati temporanei degli utenti, e per ogni pagina si confronta l'hash del cookie con l'hash immagazzinato nella tabella (insieme all'uid). Se viene fatta una nuova autenticazione, la query consente di sovrascrivere i dati.

Diciamo che ho le idee poco chiare. Se si deve tenere conto della sicurezza ecc.ecc. , come mantenere in modo sicuro una sessione utente senza cadere in paranoici ed improduttivi controlli a catena?

grazie per la (paziente) disponibilitą

SerMagnus
03-03-2009, 17:16
per quanto mi riguarda farei tutto con le sessioni, i cookie sono troppo insicuri.
e sopratutto darei molta rilevanza all'ip, considera sempre che con fw l'ip in uscita č condiviso.

per il resto puoi fare tutto con l'id utente

packllama
03-03-2009, 17:31
Ok quindi diciamo pure che devo lavorare sulle sessioni. Quali altri parametri possono essere infilati nell'hash per renderlo ancora pił personale?


Siccome sono alle prime armi con le sessioni, vorrei capire meglio come vengono portate le informazioni dell'array $SESSION da una pagina all'altra senza perdere la loro validitą. Mi spiego meglio: ogni pagina ha uno script a sč, chi fa il lavoro di mantenere in vita l'array $SESSION se cambio pagina?

Torav
03-03-2009, 17:36
il webserver salva i dati delle sessioni su dei file, in particolare in php ogni volta che dai un session_start() lui si va a rileggere il file della sessione corrente e popola $_SESSION
Io onestamente non ho mai utilizzato i cookie, li trovo poco sicuri e inutili (per quello che faccio io!)