Lo scopo di non divulgare l'identificatore utente attivo è impedire l'enumerazione di un gran numero di account.
A rigor di termini, potresti proteggerti consentendo account duplicati, ma questo è un progetto terribile e ti porterà a tutti i tipi di problemi.
Un altro modo per farlo è assegnare agli utenti un identificatore, costruendone uno inutilizzato. Ma questa è un'esperienza di usabilità così scarsa che potrebbe non valerne la pena *.
Il modo sensato per mitigare il rischio è implementare qualsiasi anti -funzione di enumerazione - ad esempio, un captcha di buona qualità, per rallentare qualsiasi tentativo di enumerazione. Quindi il design è ragionevolmente sicuro.
Il rischio residuo è quindi che lasci aperta la verifica di un account di valore molto elevato, ad esempio barack .obama @ gmail.com. Quindi mitighi questo rischio implementando anche un controllo contro i tentativi di cracking delle password, ecc.
* Salzer e Shroeder, The Protection of Information in Computer Systems, Section IA3 ) h) Accettabilità psicologica: è essenziale che l'interfaccia umana sia progettata per la facilità d'uso, in modo che gli utenti applichino regolarmente e automaticamente i meccanismi di protezione in modo corretto. Inoltre, nella misura in cui l'immagine mentale dell'utente dei suoi obiettivi di protezione corrisponde ai meccanismi che deve utilizzare, gli errori saranno ridotti al minimo. Se deve tradurre la sua immagine delle sue esigenze di protezione in un linguaggio di specifica radicalmente diverso, commetterà errori.