繁体   English   中英

如何使用asp.net-mvc创建基本用户登录?

[英]How to create a basic user login using asp.net-mvc?

我将使用LINQ从头开始使用C#和asp.net构建实体/ MVC框架。

我们选择不使用内置的会员资格授权。

我想弄清楚的是,如果我的所有基地都被覆盖,或者我忘记了什么。 或者如果我过度复杂化了。

这就是我设想它的方式。

我创建了一个表,其中包含用户信息,用户名和密码。 将其移动到我的代码中的模型。

我在代码中创建了一个身份验证服务。 然后,当他们登录时,我将时间添加到他们登录的表中,然后在每个页面上访问我检查时间,如果30分钟已经过去,我将它们记录下来并将它们放回登录页面,否则我将它们带到他们要求的页面。

这是一个可行的方法吗? 我真的需要为每个页面控制器添加身份验证检查吗?

哪个基本上是。 Services.Authentication.VerifyLogin()

如果已经过了30分钟,则将更新表LoggedIn记录为false。 如果在30分钟内。 将LoggedInTime更新为当前时间。

我想你想要的是使用MVC身份验证cookie,而不是检查你的数据库他们登录的时间:

// sign in
FormsAuthentication.SetAuthCookie(username, false);
// sign out
FormsAuthentication.SignOut();

参考。 自定义身份验证和ASP.NET MVC

参考。 http://www.codeproject.com/Articles/578374/AplusBeginner-27splusTutorialplusonplusCustomplusF

另外,这是关于MVC 4中自定义身份验证的好文章:

http://www.codeproject.com/Articles/601687/ASP-NET-MVC-4-Forms-Authentication-Customized

如果您正在使用MVC,则不必“ 向每个页面控制器添加身份验证检查 ”,您只需在控制器中需要身份验证的操作上方添加[Authorize]属性即可。

这是一个可能帮助您的授权示例:
http://www.asp.net/mvc/tutorials/mvc-music-store/mvc-music-store-part-7

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM