我应该如何在ASP.NET MVC站点中实现用户成员资格?

时间:2009-02-04 06:48:54

标签: asp.net-mvc login asp.net-membership membership

我正在创建一个ASP.NET MVC站点,我需要实现登录和成员身份功能。

这是我自己推出的东西吗?我已经在我的数据库中有一个成员表,我应该创建一个用户名和密码哈希字段,然后检查它吗?如何让用户使用过期的cookie登录?

当您使用ASP.NET内置的Membership服务时,这是一个实例吗?

ASP.NET MVC新手寻求帮助。

2 个答案:

答案 0 :(得分:14)

当您创建新的ASP.NET MVC站点时,它已经内置了成员资格。在其他答复中提到的CodePlex项目仅在特殊情况下才需要,即:

  • 您正在使用MVC框架的早期测试版,该框架没有会员资格功能。
  • 您想使用像OpenID这样的身份验证系统,MVC不支持“开箱即用”。
  • 您希望会员管理功能不包含在“开箱即用”中

但是,正如我所说,基本会员功能已经存在于MVC网站中。只需将[Authorize]属性添加到任何需要登录的操作即可。这是常规表单身份验证,因此您在Web.config中配置了非MVC站点(指定数据库等;网上有很多关于此的信息)。

默认的MVC网站将包含一个“帐户”控制器和视图,您可以根据自己的需要进行自定义。

回答这个显而易见的问题,不,你不应该“自己动手”。即使您需要自定义身份验证,创建常规ASP.NET成员资格提供程序比创建全新的成员资格框架更好。

更新CodePlex project已更新,可与MVC 1.0配合使用

答案 1 :(得分:4)

如果您想使用安全的东西开始,请使用新项目的模板成员资格或考虑使用http://www.codeplex.com/MvcMembership