[英]ASP.NET Core Identity 2.0 SignoutAsync is not logging out user if the user signed in with Google
[英]ASP.Net Core 2.0 SignOutAsync deleting the wrong Cookie?
我有一个ASP.net Core 2.0 MVC应用程序,遇到了一个奇怪的问题。 在我的AccountsControler.cs中使用HttpContext.SignInAsync(...)登录用户时,这将创建一个名为“ .AspNetCore.Identity.Application”的Cookie。 稍后使用HttpContext.SignOutAsync()登出用户时,ASP.net Core决定通过在Response-Header中将此Cookie设置为在unix时代过期来删除cookie名称“ Identity.External”。
好像我的CookieAuthentication出了点问题。 有人知道,去哪里找?
FunFact:这两个名称都不是我希望看到的,因为我为CookieAuthentication配置了完全不同的名称:
services.AddAuthentication (CookieAuthenticationDefaults.AuthenticationScheme)
.AddCookie (
options => {
options.Cookie.Name = "MyMagic.User";
}
);
其实问题似乎是我用过的
service.AddAuthentication(...)
在这个应用程序中。 在我的代码中看起来像是ASP.net Core 1.0迁移工件。
删除显式Cookie身份验证后, SignInAsync()和SignOutAsync()使用相同的Cookie名称。
此外,
services.ConfigureApplicationCookie(opts => {
opts.Cookie.Name = "My.Cookie.User";
});
我能够重命名cookie。 :)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.