Sto considerando di archiviare un hash dell'ID di sessione di un utente nei registri delle applicazioni su ogni richiesta. Ciò consentirebbe alle sessioni degli utenti di essere facilmente rintracciate alle azioni nei nostri registri.
Capisco che l'archiviazione di questo è un potenziale rischio per la sicurezza, che potrei essere disposto a considerare se il rischio è molto basso. Perché è un rischio? Se qualcuno che ha accesso ai log può capire come ottenere un ID di sessione, può essenzialmente rubare agli utenti la sessione e accedere come se fossero senza credenziali.
A tal fine, se dovessi farlo, qual è il modo migliore per farlo?
Ecco alcune cose che mi piacerebbe prendere in considerazione:
- Quale algoritmo di hashing dovrei usare? Deve essere veloce.
- Cosa dovrei fare? ID sessione + sale?
- Quanto è rischioso? Dovrei proprio non farlo?
EDIT: sto considerando la possibilità di generare un GUID e di aggiungerlo a una sessione utente durante la creazione della sessione. Quindi, registrando questo invece. In questo modo sarebbe sempre unico per la durata delle sessioni. Il problema con questo è che aggiungerebbe più dati di sessione e richiederà più memoria di sessione per ogni utente. Con questo approccio non sarebbe richiesto alcun hashing e la sessione dell'utente potrebbe ancora essere tracciata in modo univoco.