У нас есть приложение ASP.NET MVC 5 с использованием аутентификации cookie Owin. В настоящее время мы настраиваем аутентификацию cookie следующим образом:
public partial class Startup
{
public void ConfigureAuth(IAppBuilder app)
{
var timeoutInMinutes = int.Parse(ConfigurationManager.AppSettings["cookie.timeout-minutes"]);
app.UseCookieAuthentication(new CookieAuthenticationOptions
{
AuthenticationType = DefaultAuthenticationTypes.ApplicationCookie,
AuthenticationMode = AuthenticationMode.Active,
LoginPath = new PathString("/"),
ExpireTimeSpan = TimeSpan.FromMinutes(timeoutInMinutes),
SlidingExpiration = true,
LogoutPath = new PathString("/Sessions/Logout")
});
}
}
У нас есть запрос функции, позволяющий нашим администраторам приложений настраивать таймауты сеанса в своих организациях. Однако приведенный выше код конфигурации выполняется на уровне приложения MVC, и наше приложение является многопользовательским. Кто-нибудь знает способ установки ExpireTimeSpan пользовательского сеанса для каждого пользователя либо во время аутентификации, либо путем переопределения события конвейера Owin где-нибудь?
Спасибо заранее!