2017-04-20 3 views
0

Ich versuche, die Funktion zum Zurücksetzen des Kennworts in meinem ASP.Net MVC-5-Projekt zu implementieren. Also habe ich für das Reset-Token einen zufälligen Token-Generator benutzt. Und ich maile das Token an den Benutzer, aber nachdem ich das Token in der Datenbank gespeichert habe, möchte ich, dass das Token nach einer gewissen Zeit abgelaufen ist. Ich googelte, aber zu meiner Überraschung konnte ich nichts Konkretes finden. Kann mir also jemand erklären, wie man den Ablauf eines Tokens aus der Datenbank implementiert, oder gibt es einen anderen Weg, dies zu erreichen? Ich bin ein Anfänger, also weiß ich nicht viel. Entweder C# oder VB.Net wird irgendetwas tun. Do, ich brauche gespeicherte Prozedur oder Trigger oder etwas. sag nur.So verfallen das Token zum Zurücksetzen des Kennworts

Antwort

2

Speichern Sie einfach den Zeitstempel, wenn das Token gesendet wurde, und überprüfen Sie diesen Zeitstempel, wenn der Benutzer versucht, das Passwort zurückzusetzen. Wenn der Zeitstempel zu alt ist, fragen Sie nach einem neuen Reset-Token.

+1

Ich bevorzuge eine Ablaufzeit zu speichern, aber es ist am Ende das Gleiche. Außerdem hat das Reset-Token nun die Möglichkeit, für ein Passwort einzutreten. Wenn die Datenbank schreibgeschützt ist, sind die meisten Token abgelaufen, einige können jedoch immer noch gut sein. Daher sollte das Token mit ähnlicher Sicherheit wie das Passwort gespeichert werden: das Token nicht direkt speichern; Speichere einen Hash des Tokens. –

0

Versuchen Sie, einen Job in der Datenbank zu erstellen. Auf diese Weise können Sie eine Zeit einstellen und sie wird so oft ausgeführt wie Sie möchten.

Verwandte Themen