我在身份验证应用程序中使用Microsoft邮件使用oAuth2令牌实现。很好如果我要从应用程序注销,请使用以下代码从应用程序以及Microsoft Outlook Web中注销。
应用程序注销:
public void SignOut()
{
HttpContext.GetOwinContext().Authentication.SignOut(
OpenIdConnectAuthenticationDefaults.AuthenticationType, CookieAuthenticationDefaults.AuthenticationType);
CleanFullUserData();
}
Microsoft注销:
var redirectUrl = ConfigurationManager.AppSettings["LogoutUrl"].ToString() + "Account/Logout/";
var logouturl = string.Format("https://login.microsoftonline.com/common/oauth2/logout?post_logout_redirect_uri={0}", redirectUrl);
Response.Redirect(logouturl);
在单击注销之前,我从Cookies管理器中获取了asp.net.cookies值,然后单击了注销。之后,我再次登录该应用程序,并使用cookies管理器将现有的过期cookie放在当前的asp.net.cookies上。之后,如果我正在调用任何操作,则应注销该操作,否则需要按照microsoft指令停止该操作。但是它正在使用过期的cookie。请在这里说明,如何使这些Cookie过期。
注意:我正在使用 [Authorize] (除帐户控制器外的所有控制器)。