asp.net-mvc – web.config中的表单身份验证
发布时间:2020-12-16 00:33:18 所属栏目:asp.Net 来源:网络整理
导读:我正在使用MVC3,并将用户认证放在web.config文件中。这是绕过sqlserver身份验证。 代码如下web.config中所示: authentication mode="Forms" forms loginUrl="~/Account/LogOn" timeout="2880" credentials passwordFormat="Clear" user name="test123" pas
我正在使用MVC3,并将用户认证放在web.config文件中。这是绕过sqlserver身份验证。
代码如下web.config中所示: <authentication mode="Forms"> <forms loginUrl="~/Account/LogOn" timeout="2880" > <credentials passwordFormat="Clear"> <user name="test123" password="test123" /> </credentials> </forms> </authentication> 我尝试使用提到的用户标识和密码进行登录,我在页面中出现错误 登录失败。请更正错误,然后重试。 * The user name or password provided is incorrect. 当我调试到AccountController.cs文件,失败在MembershipService.ValidateUser(model.UserName,model.Password)方法。 解决方法
如果您检查标准的ASP.NET MVC 3 AccountController.cs和AccountModels.cs文件,您将学习内部使用的
MembershipProvider.ValidateUser方法(通过
Membership.Provider)。如果要在web.config中存储密码,则应该使用
FormsAuthentication.Authenticate方法。
例如: public class AuthorizationController : Controller { public ActionResult LogOn() { return View("LogOn"); } [AcceptVerbs(HttpVerbs.Post)] public ActionResult LogOn(string userName,string password,bool rememberMe,string returnUrl) { if (!ValidateLogOn(userName,password)) return View("LogOn"); FormsAuthentication.SetAuthCookie(userName,rememberMe); if (!string.IsNullOrEmpty(returnUrl)) return Redirect(returnUrl); else return RedirectToAction("Index","News"); } private bool ValidateLogOn(string userName,string password) { if (string.IsNullOrEmpty(userName)) ModelState.AddModelError("username","User name required"); if (string.IsNullOrEmpty(password)) ModelState.AddModelError("password","Password required"); if (ModelState.IsValid && !FormsAuthentication. Authenticate(userName,password)) ModelState.AddModelError("_FORM","Wrong user name or password"); return ModelState.IsValid; } public RedirectToRouteResult LogOff() { FormsAuthentication.SignOut(); return RedirectToAction("LogOn"); } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – 使用缓存配置文件缓存ChildActions将不起作
- 基于asp.net MVC 应用程序的生命周期(详解)
- 如何利用ASP.net IIS 7.5中的浏览器缓存
- asp.net-mvc – Razor视图引擎优于其他视图引擎的优点是什么
- asp.net-core – aspnet核心应用程序中的Autofac.Multitena
- kendo-ui – 我可以在网格的数据绑定事件上传递参数吗?
- 无法通过IP地址连接ASP.NET开发服务器(VS2010)
- asp.net – 发布网站项目时Temp路径太长
- asp.net-mvc – 统一MVC和Web Api – 视图和json的相同控制
- ASP.NET MVC全能路由
推荐文章
站长推荐
热点阅读