在mvc应用程序中的asp.net 3.5密码恢复控制?

时间:2010-05-06 16:12:43

标签: asp.net asp.net-mvc forgot-password

我可以在MVC应用程序中使用asp.net 3.5密码恢复控件吗?

我们需要为我们的MVC应用程序提供密码检索功能,我想使用密码恢复控件,该控件仅适用于Web表单应用程序。

3 个答案:

答案 0 :(得分:4)

与登录和注销不同,密码恢复功能并未在全新的ASP.NET MVC项目中实现,但是,将此功能添加到ASP.NET MVC项目实际上非常简单,因为Membership类已经具有核心功能功能内置。

我在博客中发布了关于我是如何做到的解释:

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

答案 1 :(得分:4)

关于当前最新技术的几点(截至2011年10月):

第1页:您很可能实际上不想要密码“恢复”,因为它被认为是安全风险,您必须关闭单向密码加密才能实现它。相反,大多数人实施密码“重置”。

如果你确实想要“恢复”,那么:

1)在VS2010中创建新的Internet项目时,它会为您创建:LogOn,Register和ChangePassword页面。正如Hector所说,没有为您创建密码恢复。

2)但是,Asp.Net Membership provider确实支持它,所以你可以通过自己创建Model,Controller和View来添加它,设置enablePasswordRetrieval =“true”和passwordFormat =“Encryted”并调用Membership.GetUser( )。

如果不是密码“恢复”,你实际上想要密码“重置”,那么有几种方法可以实现它:   i)自助服务 - 用户可以点击链接并向他们发送电子邮件,并附带重置密码的链接。

示例:

我试过这个。我喜欢它,因为它处理帐户确认和密码重置: - http://nuget.org/List/Packages/SimpleMembership.Mvc3

我没有尝试过这些:

- 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)管理员管理 - 您联系管理员,然后管理员为您重置您的密码。 Gthompson83上面提到的TroyGoode的MvcMembership Starter Kit就是一个例子。管理员可以访问一个名为“用户管理”的菜单项,允许重置密码或生成随机密码并通过电子邮件发送给用户。它也让你管理角色。

答案 2 :(得分:0)

Webforms中的许多服务器控件无法按照设计在MVC上运行。查看MvcMembership starter kit