it-swarm-eu.dev

Was soll passieren, wenn die Anmelde-E-Mail-Adresse eines Benutzers geändert wurde?

Ich mache ein Online-Frontend für ein System. Dieses System wird normalerweise von einem Unternehmen verwendet, das einem Kunden einen Service anbietet. Der Kunde hat die Möglichkeit, dieses Online-Frontend zusätzlich zum direkten Umgang mit einer realen Person im Unternehmen zu nutzen.

Jetzt meldet sich der Benutzer mit einer E-Mail-Adresse als Benutzername beim Online-Frontend an. Diese E-Mail-Adresse wurde vom Unternehmen mit ihrem Konto verknüpft. Der Benutzer kann diese E-Mail-Adresse jederzeit über die direkte Kommunikation mit dem Unternehmen ändern. Was passiert, wenn der Benutzer seine E-Mail-Adresse auf diese Weise geändert hat?

Es ist klar, dass die neue E-Mail-Adresse den Benutzer nahtlos anmelden muss. Was passiert mit der alten E-Mail-Adresse, wenn der Benutzer versucht, sich anzumelden?

  • Wirfen wir einen "ungültigen E-Mail" -Fehler aus?
  • Fordern wir den Benutzer auf, sich mit der neuen E-Mail-Adresse anzumelden?
  • Erlauben wir dem Benutzer, sich mit der alten Adresse anzumelden, zeigen aber im Frontend eine markante Option an, die ihn zum Umschalten auffordert?

Als fauler Programmierer neige ich zur zweiten Option. Vielleicht ist die dritte Option besser verwendbar? Es scheint, als würde dies eine weitere Komplexitätsebene hinzufügen, sowohl im Programm als auch in der Art und Weise, wie der Benutzer über sein Konto nachdenken muss.

12
James

Sie sollten einen "ungültigen E-Mail" -Fehler auslösen. Es ist am transparentesten, kommuniziert genau, was passiert ist, und der Benutzer kann das Verhalten basierend auf diesem Feedback sofort anpassen, wobei die Wahrscheinlichkeit gering ist, dass dieselbe Nachricht erneut angezeigt wird. Lassen Sie mich durchgehen, warum die anderen Optionen keine gute Idee sind:

  • Die Aufforderung, sich mit der neuen Adresse anzumelden, ist ein Sicherheits-Anti-Pattern. Wenn ich Ihre alte E-Mail-Adresse kenne, kann ich jetzt feststellen, wie Ihre neue E-Mail-Adresse lautet, von der ich weiß, dass Sie Service X verwenden. Dies kann ein Datenschutzproblem sein, insbesondere auf einer Dating-Website oder einem sozialen Netzwerk. (Bearbeiten: Dies ist nur dann ein Problem, wenn Sie tatsächlich die neue E-Mail-Adresse anzeigen. Ich habe Ihre Kugel falsch verstanden und dachte, das haben Sie gesagt. Der Punkt bleibt jedoch bestehen :)

  • Sie wissen nicht, warum der Benutzer seine E-Mail-Adresse ändert. Daher ist es riskant, diese E-Mail-Adresse weiterhin für dieses Konto zu sperren. Nach allem, was Sie wissen, haben sie ihr Konto bei ihrem vorherigen E-Mail-Host gekündigt und diese Adresse wird jetzt von jemand anderem verwendet, der möglicherweise auch auf Ihren Dienst zugreifen möchte (unwahrscheinlich, aber theoretisch!).

Wenn Sie die Warnung "Ungültige E-Mail" implementieren, können Sie die Dinge mit unserem vertrauenswürdigen, kostengünstigen Freund Copywriting etwas freundlicher gestalten:

Die von Ihnen eingegebene E-Mail-Adresse oder das eingegebene Passwort ist ungültig. [...] Vielleicht haben Sie die E-Mail-Adresse geändert, mit der Sie sich anmelden?

Sie können auch die Möglichkeit anbieten, anzufordern, welche E-Mail-Adresse zum Anmelden verwendet wird. Um dies zu tun, ohne das oben genannte Anti-Pattern zu erhalten, lassen Sie den Benutzer sein altes E-Mail-Adresse und dann die Meldung "Wir haben eine E-Mail an die Adresse gesendet, die wir zum Anmelden verwenden". Der Benutzer kann sich dann anhand der von Ihnen gesendeten E-Mail merken, welche E-Mail-Adresse er durch Zuordnung verwendet. Natürlich müssen Sie überprüfen, ob es den Benutzern nichts ausmacht, ein Protokoll ihrer früheren E-Mail-Adressen zu führen - sie werden es möglicherweise nicht zu schätzen wissen.

All dies geht weit über das hinaus, was die meisten Websites für Verbraucher in Bezug auf Benutzerfreundlichkeit implementieren. Normalerweise ist das Ändern Ihrer E-Mail-Adresse eine permanente Änderung, und es gibt keine Möglichkeit, Probleme zu beheben, wenn Sie vergessen, dass Sie diese Änderung vorgenommen haben. Betrachten Sie zum Beispiel Ihr Google-Konto: Ändern Sie dort die E-Mail-Adresse und vergessen Sie, und Sie haben wahrscheinlich ein ziemlich großes Problem, wenn Sie keine Telefonnummer registriert haben, an die Sie eine SMS senden können.

Bearbeiten: Die beste Lösung ist eindeutig eine Kombination aus Ihrem ersten und zweiten Punkt, die ich vor dem Schreiben dieser Antwort nicht gründlich gelesen habe. Die meisten Antworten sind jedoch immer noch sinnvoll.

12
Rahul

In Bezug auf Sicherheit und Benutzerfreundlichkeit - der Grund, warum einige Systeme nicht angeben, ob die E-Mail oder das Kennwort eingegeben wurde, liegt darin, dass Sie einem Hacker mit der Meldung "Ungültige E-Mail" umgekehrt ein Signal geben, dass eine bestimmte E-Mail - funktioniert funktioniert, wenn es ist vorhanden ist.

Ich würde also nicht "ungültige E-Mail" sagen - ich würde sagen "E-Mail oder Passwort wurden nicht erkannt".

17
Julian H

Wenn die E-Mail-Adresse als eindeutige ID verwendet wird, würde ich erwarten, dass das System die ursprüngliche E-Mail vergessen hat und mich jetzt mit der neuen verknüpft. Ich würde also einen Fehler erwarten. Möglicherweise könnte die Nachricht darauf hindeuten, dass sie ihre E-Mail-Adresse geändert haben.

Was auch immer Sie tun, lassen Sie eine E-Mail an die ursprüngliche E-Mail-Adresse gehen, wenn Sie zur neuen E-Mail-Adresse wechseln, wie "Die E-Mail-Adresse für dieses Konto wurde in [neue E-Mail] geändert Link, um diese Änderung zu bestreiten]. "

Apple macht das nicht. Was nervt, wenn jemand Ihr iTunes-Konto hackt und die E-Mail-Adresse ändert.

5
DA01

Diese Frage ist etwas irreführend, da sie die "E-Mail-Adresse" von Word verwendet, obwohl sie tatsächlich für eine eindeutige Zeichenfolge gilt, die den Benutzer identifiziert. Es gibt separate Bedenken hinsichtlich des Sendens vertraulicher Informationen an eine möglicherweise falsche E-Mail-Adresse. Ich werde diese nicht ansprechen.

In Bezug auf das Problem "Benutzeridentifikationszeichenfolge hat sich geändert" hat die Website, auf der ich arbeite, eine Lösung implementiert, die wie folgt funktioniert:

  • Wenn sich eine Benutzer-ID ändert, bleibt die alte ID für einen bestimmten Zeitraum reserviert.
  • Wenn sich ein Benutzer mit seiner neuen ID anmeldet, wird die alte ID für die spätere Wiederverwendung durch einen anderen Benutzer freigegeben.
  • Wenn sich der Benutzer mit der alten ID anmeldet, zeigt das System ihm eine Seite an, auf der angegeben wird, dass sich seine ID geändert hat und wie die neue ID lautet. Dies wird als sicher angesehen, da die ID nur ein Name ist und das Kennwort erforderlich ist. Vermutlich kennt nur der Benutzer sein Passwort.
  • Auf der Seite "Benutzername geändert" befindet sich ein Link, der den Benutzer auf die Website führt. Durch Klicken auf diesen Link wird die alte ID freigegeben. Zukünftige Versuche, sich mit der alten ID anzumelden, schlagen fehl.

Wenn ein Benutzer seine ID aus Sicherheitsgründen ändert, sollte er sein Kennwort wirklich ändern. In diesem Fall ist die ID ein öffentlich bekannter Benutzername. Eine Änderung aus Sicherheitsgründen hat daher keinen Vorteil.

Wenn Sie sicherstellen möchten, dass eine E-Mail an die richtige Adresse gesendet wird, müssen Sie eine Art System implementieren, in dem der Empfänger der E-Mail die E-Mail-Adresse authentifizieren und den Empfang der E-Mail nachweisen kann, möglicherweise auch außerhalb der E-Mail-Adresse. Bandinformationen wie eine SMS Nachricht oder so. Das ist jedoch ein separates Problem.