Oggi come molte altre volte in passato, ho firmato un nuovo servizio e ho ricevuto un messaggio di errore comune:
Your user name or password is invalid
Questa volta mi chiedo quanto sia utile notificare "password o utente non valido" rispetto a uno schema di due messaggi meno comune ma più utile con il problema reale: "utente sconosciuto", "password non valida"
Il mio pensiero era che un sistema che non specifica se il nome utente è valido potrebbe essere più sicuro perché non espone nomi utente validi. Tuttavia, quanto è pratico questo nella vita reale? Sebbene abiliti la possibilità di estrarre un elenco di nomi utente. Quanto può essere una minaccia? Vale veramente la pena di degradare un po 'l'esperienza utente di login (errore ambiguo) in cambio di nascondere l'elenco degli utenti?
In questo momento l'idea di esporre l'elenco di nomi utente validi sembra una cosa molto brutta. Tuttavia non sono sicuro che sia solo una paranoia di sicurezza ingiustificata che non è davvero pratica. Anche se un utente malintenzionato potrebbe ottenere un elenco di buoni nomi utente che potrebbe provare ad attaccare con forza bruta, ma se i nomi utente sono resi pubblici (come in un forum), è solo paranoia evitare di esporre nomi utente validi?
Aggiorna :
In un forum, ad esempio, un crawler web sarebbe molto più efficiente nel raccogliere i nomi degli utenti di un generatore di brute force del generatore di nome utente. Mi chiedevo se ci sono casi validi in cui gli errori di registrazione ambigui sono pratici.