Questa domanda è correlata a questa: checkout anonimo
La mia azienda ha acquistato un software CRM e sono preoccupato dal modo in cui memorizza le informazioni dei clienti.
Il sito Web consente agli utenti anonimi di avere un carrello della spesa e aggiungere prodotti. Il sito Web chiede loro di accedere una volta che vogliono pagare.
Il fatto è che i clienti anonimi sono memorizzati nella stessa tabella dei clienti autenticati, l'unica differenza è che la loro e-mail, password, salekey è vuota. L'unica informazione che teniamo è l'indirizzo IP; quando l'utente accede, possiamo convertire questo account in uno reale. Questa tabella contiene anche un flag 'isAdmin'.
EDIT : in effetti, viene creato un cookie di autenticazione asp.net per mantenere la sessione utente.
La domanda che ho: è una pratica ok o c'è un possibile problema di sicurezza con questo?
Ulteriori informazioni: abbiamo 20k "ghost" utenti nel database, un sistema di manutenzione è disponibile per pulire i record inutili dopo un po 'di tempo.
EDIT2 : le mie preoccupazioni principali sono:
- gli utenti anonimi, autenticati e admin si trovano nella stessa tabella
- Gli utenti anonimi sono considerati utenti autenticati da asp.net, il CRM ha il proprio modo di rilevare se sono realmente autenticati.