OWIN аутентификация, истечение срока действия текущего токена и удаление cookie

У меня есть OWIN Middleware для аутентификации. У нас есть два типа аутентификации на месте. Первый тип является токеном-носителем с использованием следующей конфигурации

var OAuthOptions =  new OAuthAuthorizationServerOptions
    {
        AuthenticationType = DefaultAuthenticationTypes.ExternalBearer,
        TokenEndpointPath = new PathString("/Token"),
        Provider = new ApplicationOAuthProvider(PublicClientId),
        AccessTokenExpireTimeSpan = TimeSpan.FromDays(14),
        AllowInsecureHttp = true,
        AccessTokenFormat = new SecureTokenFormatter(GetMachineKey())
    };

И второй тип использования аутентификации cookie для внешнего входа

app.UseCookieAuthentication(new CookieAuthenticationOptions
{
    AuthenticationType = DefaultAuthenticationTypes.ExternalCookie,
    AuthenticationMode = Microsoft.Owin.Security.AuthenticationMode.Passive,
    CookieHttpOnly = true,
    CookieSecure = CookieSecureOption.SameAsRequest,
    CookieName = ".AspNet." + DefaultAuthenticationTypes.ExternalCookie,
    ExpireTimeSpan = TimeSpan.FromMinutes(5),
    TicketDataFormat = new SecureTokenFormatter(GetMachineKey())
});

Когда пользователь выходит из системы, мы фактически выпускаем два выхода

Request.GetOwinContext().Authentication.SignOut(DefaultAuthenticationTypes.ExternalCookie);

А также

Request.GetOwinContext().Authentication.SignOut(DefaultAuthenticationTypes.ExternalBearer);

В первом случае я ожидаю увидеть файл cookie .AspNet.ExternalCookie, удаленный из браузера, а это не так. Со вторым я ожидаю, чтобы мой токен был признан недействительным, а User.Current.Identity = null, чего нет.

Итак, как я могу 1) Физически выйти из текущего удостоверения для текущего сеанса? 2) Удалить внешний Cookie из браузера?

Ответы на вопрос(1)

Ваш ответ на вопрос