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

Место общения программистов C#
Ответить
Anonymous
 Аутентификация OWIN, срок действия текущего токена и удаление файлов cookie

Сообщение Anonymous »

У меня есть промежуточное ПО OWIN для аутентификации. У нас есть два типа аутентификации.
Первый тип — токен на предъявителя, использующий следующую конфигурацию

Код: Выделить всё

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 из браузера?

Подробнее здесь: https://stackoverflow.com/questions/272 ... ove-cookie
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»