Il semble assez typique de limiter les comptes d'utilisateurs à des adresses électroniques uniques. Donc, sur mon formulaire d'inscription de l'utilisateur, je fais une validation par courrier électronique et renvoyant un message comme p>
Un compte a déjà été enregistré pour foo@bar.com p> blockQuote>
Puis il m'est arrivé qu'un attaquant puisse utiliser ce formulaire pour déterminer des informations sur mes utilisateurs. Existe-t-il une solution alternative de fournir des messages de validation à mes utilisateurs sans compromettre la sécurité? Cela ne me semble pas là-bas. P>
7 Réponses :
Je ne pense pas qu'il soit vraiment possible de créer un message d'erreur sans indiquer que l'adresse e-mail est déjà utilisée, car c'est le point de l'adresse e-mail. P>
Je peux penser à une solution: vous pouvez demander une adresse email, puis envoyer le lien pour un formulaire d'inscription ponctuelle à cette adresse électronique. Vous pourriez avoir besoin d'un captcha là-bas pour arrêter le spam. Si l'e-mail est déjà dans le système, il pourrait envoyer un message indiquant qu'ils ont déjà un compte. P>
Je pense que cela est inutile de THO, à moins que votre site Web soit surtout secret, comme un groupe de soutien pour les victimes d'abus. P>
Dites-leur simplement qu'ils ne peuvent pas utiliser l'adresse e-mail qu'ils ont fournie? Vous n'avez pas besoin de donner plus de raisons que cela? S'ils savent que ce n'est pas leur email, ils pourraient toujours deviner que c'est une adresse existante, mais que vous n'avez pas confirmé cela. P>
ou p>
Que diriez-vous de leur dire que vous avez envoyé un courrier électronique à cette adresse et ils doivent confirmer - même si vous ne l'avez pas fait. P>
Montrant un "mot de passe oublié?" Le lien peut en même temps pourrait aider à faire du jogging leur mémoire.
Pour la plupart des types de sites, je m'attendrais à ce que cachant explicitement ces informations constituerait une mauvaise expérience de l'utilisateur. La meilleure solution consiste à utiliser CAPTCHA pour empêcher la composition de la guerre des adresses électroniques. P>
L'exception serait dans les cas où un attaquant recherche des informations sur un utilisateur spécifique (plutôt que d'essayer de trouver "un compte"). À titre d'exemple, si votre site s'adresse aux personnes qui ont un fort intérêt pour l'anonymat, et qu'il y a des attaquants qui ont un fort intérêt à déterminer si un utilisateur spécifique utilise le site, alors l'approche doit être différente. Mon approche serait probablement d'envoyer un courrier électronique à l'adresse indiquant l'erreur "déjà enregistrée". L'expérience de l'utilisateur de l'utilisateur serait compensée par l'anonymat de l'utilisateur. P>
Ce sont les options que je vois: p>
1) Affiche un message d'erreur non si clair comme "L'adresse e-mail n'est pas valide"
2) accepter l'enregistrement et informer l'utilisateur de son compte antérieur par courrier électronique (je suggérerais que) p>
Dans tous les cas, vous pouvez améliorer la sécurité des codes CAPTCHA et des demandes d'étranglement par le même client. Si vous vous souciez d'autant de choses sur la confidentialité de vos utilisateurs, forçant un enregistrement de courrier électronique unique est peut-être pas adapté à votre site. P>
Vous pouvez recevoir ce message d'erreur si vous avez déjà un alias de courrier électronique existant avec cet e-mail ou cet utilisateur foo@bar.com. P>
Vous pouvez vérifier que si l'alias de messagerie existe, vous devrez d'abord le supprimer, puis essayez de le créer. P>
La réponse de Rob Napier est correcte. Vous devriez décider si vos utilisateurs ont réellement besoin de cet anonymat au coût de dégradation UX (dans la plupart des cas, ils s'en foutent). P>
Voici comment certains grands noms le font: P>
Erreur: Le compte de cet email existe déjà. Code> Li>
- Apple ID:
Cette adresse email n'est pas disponible. Choisissez une adresse différente. CODE> LI>
- Cloudflare:
Un utilisateur avec cet email existe déjà (CODE: 1079) CODE> LI>
- LinkedIn:
Quelqu'un utilise déjà cet email. Code> Li>
- Overflow de pile:
Mot de passe de votre compte oublié ou avoir du mal à vous connecter à votre équipe? Entrez votre adresse e-mail et nous vous enverrons un lien de récupération. CODE> LI>
ul>