2 Stimmen

Asp.net MVC Passwort-Wiederherstellungstool funktioniert nicht

Ich verwende die Passwort-Wiederherstellungssteuerung in einer ASP.NET MVC 2-Web-App. Wenn ich auf die Schaltfläche "Senden" klicke, ohne einen Benutzernamen einzugeben, wird angezeigt, dass der Benutzername fehlt, mit einem Sternchen. Wenn ich einen Benutzernamen eingebe, wird das Formular gesendet, aber es passiert nichts. Fehlt mir hier etwas?

Web.config:

machine.config

0voto

mikesigs Punkte 9142

Entsprechend Ihrer Konfiguration verwenden Sie gehashte Passwörter und haben die Passwortwiederherstellung deaktiviert. Dies bedeutet, dass Sie Passwörter nicht wiederherstellen können (weil sie gehasht sind). Sie können sie nur zurücksetzen.

Dies ist eine sichere Konfiguration, daher ändern Sie sie nicht. Aber seien Sie sich bewusst, dass Sie Passwörter nicht "wiederherstellen" können, wenn sie gehasht sind.

Wenn Ihre Anforderungen angeben, dass Passwörter wiederhergestellt werden müssen, müssen Sie das PaswortFormat in "Verschlüsselt" ändern und enablePasswordRetrieval="true" setzen. Beachten Sie jedoch, dass alle gehashten Passwörter und Passwortantworten in Ihrer Datenbank vom Benutzer erneut eingegeben werden müssen, da die aktuellen Werte aus Sicht des Anbieters "korrupt" sind. Um diese Änderung durchzusetzen, können Sie die Authenticate-Methode auf Ihrer Login-Seite überschreiben und das Datum der letzten Passwortänderung des Benutzers überprüfen. Leiten Sie sie dann auf eine Seite um, auf der sie ihr Passwort und ihre Antwort neu konfigurieren können, damit sie sich ordnungsgemäß anmelden können.

Ein letzter Punkt zu erwähnen ist, dass verschlüsselte Passwörter abrufbar sind, da sie entschlüsselt werden können. Dies bedeutet, dass sie weniger sicher sind. Verwenden Sie also gehashte Passwörter, wenn möglich.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X