如何注销使用ASP.Net Identity系统登录的用户?
我试过了:
Authentication.SignOut();
Run Code Online (Sandbox Code Playgroud)
但是,如果我使用它然后调用标记为的API [Authorize](将标记添加为标题)它仍然返回数据(而不是未授权).
我有两个关于ASP.Identity 2.0"GenerateEmailConfirmationToken/GenerateEmailConfirmationTokenAsync"方法的问题.
// Generate token
var token = Url.Encode(await UserManager.GenerateEmailConfirmationTokenAsync(user.Id));
Run Code Online (Sandbox Code Playgroud)
如何使用ASP.NET标识注销所有会话?假设您是从具有相同用户的两个不同浏览器登录的.当用户从一个浏览器注销时,另一个浏览器的会话也应该无效.(我需要这个来改变用户密码更改的所有会话.)
您可以使用以下代码使用ASP.Net Identity注销当前会话.
var AutheticationManager = HttpContext.GetOwinContext().Authentication;
AuthenticationManager.SignOut();
Run Code Online (Sandbox Code Playgroud)
这不会签署用户的所有会话.
编辑:会议的想法是一个很好的起点.我解决了这个问题,写了一篇博文,以防你遇到同样的问题.