Es scheint ziemlich typisch zu sein, Benutzerkonten auf eindeutige E-Mail-Adressen zu beschränken. In meinem Benutzerregistrierungsformular führe ich eine E-Mail-Validierung durch und gebe eine Nachricht wie
zurückEin Konto wurde bereits für [email protected] registriert
Dann fiel mir ein, dass ein Angreifer dieses Formular verwenden könnte, um Informationen über meine Benutzer zu ermitteln. Gibt es eine alternative Möglichkeit, Validierungsnachrichten für meine Benutzer bereitzustellen, ohne die Sicherheit zu beeinträchtigen? Es scheint mir nicht, dass es einen Weg gibt.
Für die meisten Arten von Websites würde ich erwarten, dass das explizite Verbergen dieser Informationen einen schlechten Benutzererlebnis-Kompromiss darstellt. Die bessere Lösung ist die Verwendung von CAPTCHA, um zu verhindern, dass sich die E-Mail-Adressen in der Nachwahl befinden.
Die Ausnahme wäre in Fällen, in denen ein Angreifer Informationen über einen bestimmten Benutzer sucht (anstatt nur nach einem "bestimmten Konto" zu suchen). Wenn Ihre Website zum Beispiel für Personen gedacht ist, die ein starkes Interesse an der Anonymität haben, und es Angreifer gibt, die ein starkes Interesse daran haben herauszufinden, ob ein bestimmter Nutzer die Website nutzt, sollte der Ansatz anders aussehen. Mein Ansatz wäre wahrscheinlich, eine E-Mail an die Adresse zu senden, die den "bereits registrierten" Fehler anzeigt. Die Belästigung der Benutzer wird durch die Anonymität des Benutzers aufgewogen.
Ich kann mir eine Möglichkeit vorstellen: Sie können nach einer E-Mail-Adresse fragen und dann den Link für ein einmaliges Registrierungsformular an diese E-Mail-Adresse senden. Du brauchst vielleicht ein Captcha, um den Spam zu stoppen. Wenn sich die E-Mail bereits im System befindet, könnte sie eine Nachricht senden, dass sie bereits ein Konto haben.
Ich halte das für unnötig, außer Ihre Website ist besonders geheim, wie eine Unterstützungsgruppe für Missbrauchsopfer.
Sagen Sie ihnen einfach, dass sie die angegebene E-Mail-Adresse nicht verwenden können? Sie brauchen keinen Grund mehr zu geben? Wenn sie wissen, dass es nicht ihre E-Mail ist, können sie immer noch vermuten, dass es sich um eine bestehende Adresse handelt, aber Sie haben das nicht bestätigt.
Oder
Wie wäre es, wenn Sie ihnen mitteilen, dass Sie eine E-Mail an diese Adresse gesendet haben und sie bestätigen müssen - selbst wenn Sie dies nicht getan haben.
Ich glaube nicht, dass es wirklich möglich ist, eine Fehlermeldung zu erstellen, ohne zu zeigen, dass die E-Mail-Adresse bereits verwendet wird, da dies der Punkt der E-Mail-Adresse ist.
Dies sind die Optionen, die ich sehe:
1) Zeigen Sie eine nicht so klare Fehlermeldung wie "E-Mail-Adresse ist ungültig" an 2) Akzeptiere die Registrierung und informiere den Benutzer über sein früheres Konto per E-Mail (ich würde das vorschlagen)
In jedem Fall können Sie die Sicherheit durch Captcha-Codes und Drosselungsanforderungen durch denselben Client verbessern. Wenn Ihnen die Privatsphäre Ihrer Benutzer so wichtig ist, ist die Erzwingung einer eindeutigen E-Mail-Registrierung möglicherweise nicht für Ihre Website geeignet.
Tags und Links security user-registration