Il token di sessione non viene modificato all'accesso?

2

Ho effettuato l'accesso alla mia domanda e ho ricevuto un token di sessione. Quando si passa a un'altra scheda, l'applicazione contiene lo stesso token di sessione.

È normale che il token di sessione non cambi quando si accede a un'altra pagina dopo l'accesso?

    
posta lakshmi Prudhvi 02.07.2013 - 07:26
fonte

4 risposte

3

Rigenerare l'ID di sessione è uno dei tanti punti, che rende la tua applicazione più sicura. Ha senso quando l'utente aumenta i suoi privilegi (login), per evitare attacchi di fissazione della sessione.

Ci sono altre possibilità per raggiungere lo stesso obiettivo, quindi non puoi dire dall'identificativo di sessione invariato da solo, che l'applicazione non è sicura. Ad esempio, un altro modo per rendere più difficile la risoluzione delle sessioni consiste nell'utilizzare un cookie di autenticazione separato, ad esempio.

    
risposta data 02.07.2013 - 09:18
fonte
3

La nozione di sessione dovrebbe seguire l'utente, o, più precisamente, il browser dell'utente su un dato computer . Non dovrebbe essere specifico per una tab o windows , perché le schede e le finestre (nella solita architettura Web) sono un concetto locale che l'utente apre e chiude al suo riservatezza. Per definizione, la sessione si estende anche su diverse pagine successive.

Al fine di implementare la nozione di sessione, molti siti spingono nel browser (come un campo modulo nascosto, un cookie, riscrittura dell'URL o qualche altra tecnica) un token di sessione che non cambia da una pagina all'altra (perché non ha bisogno di cambiare). E 'normale. Si può immaginare un sistema di gestione delle sessioni in cui ciò che è memorizzato morph sul lato client da una pagina all'altra, ma sarebbe più complesso, senza alcun chiaro vantaggio su un semplice token di sessione invariabile.

    
risposta data 02.07.2013 - 13:29
fonte
2

È necessario rigenerare il token ogni volta che un utente accede correttamente. La sessione consente al server di mappare un utente a un determinato stato (la sessione). Quello che devi fare è assicurarti che:

  • il token di sessione cambia se viene generato un token di sessione prima di accedere
  • il token di sessione è un numero completamente casuale (veramente casuale, non un algoritmo che hai sviluppato tu stesso che è derivato da un nome utente, una password o un intervallo di tempo)
risposta data 02.07.2013 - 13:02
fonte
2

L'intero punto dell'ID di sessione è che rimane costante per tutta la sessione e crea una connessione one-one tra il browser client loggato e il server. Non è necessario continuare a modificarlo ogni volta che l'utente apre una nuova finestra.

Cambialo durante il login / logout, però.

    
risposta data 02.07.2013 - 07:37
fonte

Leggi altre domande sui tag