2010-05-06 9 views
7

Kann ich das Steuerelement asp.net 3.5 Password Recovery in einer MVC-Anwendung verwenden?asp.net 3.5 Passwort-Wiederherstellung Kontrolle in einer MVC-App?

Wir müssen die Möglichkeit zum Abrufen von Passwörtern für unsere MVC-App bereitstellen und ich möchte die Kennwortrückgabesteuerung verwenden, die nur mit einer Webformular-App funktioniert.

Antwort

4

Im Gegensatz zu Login und Logout wird die Password Recovery-Funktion nicht in einem brandneuen ASP.NET MVC-Projekt implementiert. Das Hinzufügen dieser Funktion zu einem ASP.NET MVC-Projekt ist jedoch ziemlich einfach, da die Membership-Klasse bereits über die Kernfunktionalität integriert.

ich in meinem Blog auf eine Erklärung geschrieben habe, wie ich es tat:

http://www.hectorcorrea.com/blog/Password-Recovery-in-an-ASP.NET-MVC-Project.aspx

+1

Hector Blog enthält keinen Code seand und temporäre URL oder Passwort zu generieren. – Andrus

4

Ein paar Punkte auf dem aktuellen State-of-the-art (Stand: Oktober 2011):

1: Es besteht eine gute Chance, dass Sie eigentlich kein Passwort "Recovery" wollen, da es als Sicherheitsrisiko gilt und Sie die Einweg-Passwortverschlüsselung deaktivieren müssen, um es implementieren zu können. Stattdessen implementieren die meisten Leute das Passwort "reset".

Wenn Sie wirklich wollen „Erholung“ ermöglichen, dann:

1) Wenn Sie ein neues Internet-Projekt in VS2010 schaffen, schafft es: logon, Register, und für Sie Change Seiten. Wie Hector sagt, gibt es keine Wiederherstellung von Passwörtern für Sie.

2) Allerdings unterstützt der Asp.Net-Mitgliedschaftsanbieter es, also können Sie es hinzufügen, indem Sie ein Model, einen Controller und View selbst erstellen, enablePasswordRetrieval = "true" und passwordFormat = "Encrypted" einstellen und Membership.GetUser aufrufen().

Wenn Sie anstelle des Passworts "Recovery" eigentlich das Passwort "Reset" möchten, gibt es mehrere Möglichkeiten, es zu implementieren: i) Self-Service - wo der Benutzer auf einen Link klicken kann und eine E-Mail gesendet wird sie mit einem Link, um das Passwort zurückzusetzen.

Beispiele:

Diesen habe ich ausprobiert. Ich mag es, weil es behandelt beide Kontobestätigung und Passwort-Reset: - http://nuget.org/List/Packages/SimpleMembership.Mvc3

ich keine dieser versucht haben:

-http://hectorcorrea.com/Blog/Password-Recovery-in-an-ASP.NET-MVC-Project

-http://stevenalexander.posterous.com/expiring-password-reset-token-in-mvc-with-wf

-http://forrst.com/posts/ASP_NET_MVC_3_C_Password_Reset-gFA

ii) Administrator verwaltet - Sie wenden sich an den Administrator, der dann Ihr Kennwort für Sie zurücksetzt. Das Beispiel des MvcMembership Starter Kits von TroyGoode, auf das Gthompson83 Bezug nimmt, ist ein Beispiel dafür. Es gibt einen Menüeintrag namens "Benutzerverwaltung", der für Administratoren zugänglich ist und das Zurücksetzen von Kennwörtern oder das Erstellen und Versenden von Kennwörtern für den Benutzer ermöglicht. Außerdem können Sie Rollen verwalten.