我正在继续其他人的开发,并且我对MVC应用程序中当前的认证实践知之甚少。MVC4应用程序的注销
被设置有关身份验证的唯一的东西是在应用程序的IIS配置:
- .NET Authrization规则=允许,所有用户
认证:
- 匿名身份验证:已启用
- ASP .NET模拟:已禁用
- Windows身份验证:服务器上启用
利用这种配置,,浏览器会询问我的登录/密码。我输入我的网络登录名。 然后,我可以得到认同Request.RequestContext.HttpContext.User.Identity...
用户在本地计算机,我登录使用相同的登录/密码:在应用程序中没有用户登录(Request.RequestContext.HttpContext.User.Identity.Name == “”)。如果我禁用匿名身份验证,则浏览器会无限次地重新询问loginpassword。
我的第一个问题是我希望能够注销服务器。 从scarse info我得到了这里和那里我已经尝试过: FormsAuthentication.SignOut();
- >什么都不做 WebMatrix.WebData.WebSecurity.Logout();
- >异常,试图访问数据库(我从VS2012模板之一得到这个,但我没想到它将适用于我的情况)。 if(this.Request.RequestContext.HttpContext.Session != null) this.Request.RequestContext.HttpContext.Session.Clear();
- > Session是空的,所以这没有任何作用。
那么,如何注销以重新登录为不同的用户呢?
(我也想能够识别本地计算机上的用户,但我认为应该在另外一个话题问。)
谢谢您的回复但是如果你阅读我的文章,你会发现我已经尝试了两种方法(单独和一起) – TTT
@TTT事实上,你们是否一起使用它们? - 通常在MVC中使用表单身份验证,你可以按照上面的方法注销 –
正如我以前的评论中提到的,我已经试过了,并且我尝试过两种方法)。 – TTT