В вашем коде инициализации, если вы следовали инструкциям в статье, на которую вы ссылались, есть строка примерно так:
app.UseCookieAuthentication(new CookieAuthenticationOptions());
При делегировании аутентификации провайдеру идентификации ваше приложение по-прежнему отбрасываетсянекоторые файлы cookie, основанные на результате аутентификации, контролируют время жизни.Вы можете настроить эти параметры в соответствии со своими требованиями ... например,
appBuilder.UseCookieAuthentication(new CookieAuthenticationOptions
{
AuthenticationType ="Cookies",
ExpireTimeSpan = TimeSpan.FromMinutes(60), // Expire after an hour
SlidingExpiration = true // use sliding expiration..
});
Посмотрите документы, которые вы можете настроить - https://docs.microsoft.com/en-us/previous-versions/aspnet/dn385599(v%3Dvs.113)
Кроме того, событие будетвызывается всякий раз, когда он думает, что ему необходимо взаимодействовать с провайдером идентификации, опциями обработчика, доступными в объекте Уведомления в OpenIdConnectAuthenticationOptions.Вас может заинтересовать RedirectToIdentityProvider
private void ConfigureOpenIdConnect()
{
var openIdConnectAuthenticationOptions = new OpenIdConnectAuthenticationOptions
{
// the rest of your settings....then
Notifications =
new OpenIdConnectAuthenticationNotifications
{
RedirectToIdentityProvider =
async context => await RedirectToIdentityProviderHandler(context)
},
UseTokenLifetime = false
};
}
private static Task RedirectToIdentityProviderHandler(
RedirectToIdentityProviderNotification<OpenIdConnectMessage, OpenIdConnectAuthenticationOptions> notification)
{
// do some logging whenever you app is redirecting to the IDP
return Task.FromResult(0);
}
UseTokenLifetime здесь интересен, так как ваш токен идентификации имеет время истечения, и по умолчанию время жизни файлов cookie в приложении соответствует времени жизнимаркер.Если вы хотите сами контролировать время жизни куки (согласно первому фрагменту кода), установите здесь значение false и явно контролируйте это сами.
Вы можете использовать комбинацию переопределения времени жизни идентификатора токена, более длительного срока действия файла cookie, установки скользящего истечения срока действия в значение true + некоторого входа в систему всякий раз, когда происходит перенаправление с поставщиком удостоверений.
Очевидно, что слишком точная настройка параметров увеличивает вектор атаки, поэтому внимательно изучите ваши требования безопасности.