【发布时间】:2013-12-19 12:23:47
【问题描述】:
如何注销使用 ASP.Net 身份系统登录的用户?
我试过了:
Authentication.SignOut();
但如果我使用它然后调用标有[Authorize] 的API(将令牌添加为标头)它仍然会返回数据(而不是未经授权)。
【问题讨论】:
-
您是否添加了可以使用此资源的特定用户或组?
标签: .net asp.net-identity
如何注销使用 ASP.Net 身份系统登录的用户?
我试过了:
Authentication.SignOut();
但如果我使用它然后调用标有[Authorize] 的API(将令牌添加为标头)它仍然会返回数据(而不是未经授权)。
【问题讨论】:
标签: .net asp.net-identity
您需要在AuthenticationManager 上致电SignOut,您可以从OWIN context 获得。
var AuthenticationManager= HttpContext.GetOwinContext().Authentication;
AuthenticationManager.SignOut();
【讨论】:
Current:HttpContext.Current.GetOwinContext().Authentication
HttpContext,所以在那种情况下你不需要HttpContext.Current。
HttpContext.Current...
在我的情况下,因为我的AccountController 中有Authorize 属性,并且在类级别具有管理员角色,所以我必须将[AllowAnonymous] 属性放入我的注销方法。也可能是您的解决方案。
【讨论】: