在ASP.NET vNext beta4下的AccountController中,我们使用以下命令注销:
Context.Response.SignOut(OpenIdConnectAuthenticationDefaults.AuthenticationScheme);
Context.Response.SignOut(CookieAuthenticationDefaults.AuthenticationType);
这很好用,用户最终会按照我们的预期登录Office 365的登录页面。
更新到beta6后,SignOut方法显示为错误。我们用下面的代替它,但注销似乎永远不会正确发生。用户立即被回到登录的主页。我已经尝试过SignOutAsync和ForbidAsync,甚至两者都在一起,但是自更新以来仍无法将用户注销。
var properties = new AuthenticationProperties
{
AllowRefresh = false,
ExpiresUtc = DateTime.UtcNow.AddDays(-1),
IsPersistent = true,
RedirectUri = "/",
IssuedUtc = DateTime.UtcNow
};
await Context.Authentication.SignOutAsync(OpenIdConnectAuthenticationDefaults.AuthenticationScheme, properties);
await Context.Authentication.SignOutAsync(CookieAuthenticationDefaults.AuthenticationType, properties);
在beta6中正确注销用户并将其重定向到Office 365登录屏幕的建议(或任何)方法是什么?