[英]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();
参考。 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.