Passwort vergessen

User sind genauso vergesslich wie jeder anderer, daher kommt es immer wieder vor, das er ein neues Passwort braucht.Eine einfache Variante wäre es, das der User seinen Benutzernamen oder Email-Addresse eingibt und es wird ein neues Passwort gesetzt und per Mail versendet.
Doch diese einfache Methode, hat einen Hacken, ein Bot könnte jeden Benuter durchgehn und jedem ein neues Passwort zusenden lassen, siehe Bots und Spammer -> Angriffsformen DOS Attacke
Das ist zwar nichts schreckliches, aber kann den User sehr verärgern, da er ständig ein neues Passwort bekommt.
Aber es kann auch ausufern, indem der Mail-Server lahm legt wird, weil so viele Mails ausgesendet werden.

Eine sicherere Variante wäre die Abfrage eines weiteren Wertes, den der User in seinem Profil angegeben hat, z.B. Geburtstag, usw.
Zusätzlich wäre es sinnvoll die Passwortanforderung für diesen User für eine gewisse Zeit zusperren zb: 1-3 Tage

Um den User das Leben etwas leichter zu machen, hat sich folgende Variante bewährt:
  • User gibt Benutzernamen oder Email-Addresse ein, und einen zusätzlichen Wert (zB Geburtstag)
  • Für den User wird die Passwort-Abfrage für einen bestimmten Zeitraum gesperrt.
  • Passwort wird genereiert (siehe sichere Passwörter)
  • Das neue Passwort wird per Mail versendet
  • Das neue Passwort wird als 2t Passwort zum User gespeichert.
  • Zeit vergeht ...
  • User meldet sich wieder an
Nun wird unterschieden mit welchem Passwort er dies getan hat
  • Falls es das neue ist,
    wird das alte Passwort durch das neue ersetzt und das Temp-Passwort gelöscht
  • Falls es das alte ist
    bleibt das alte Passwort, und das Temp-Passwort wird gelöscht.

Beim Passwortanforderung sollte man auch andere Absicherungen treffen (siehe sichere Formulare).