punit.vk Ответов: 1

Ранний тайм-аут сессии в ASP.NET


У меня есть два типа пользователей для входа в систему: администратор и другой пользователь. Простой автоматический выход из системы для администратора должен составлять 2 часа (120 мин), для другого пользователя-15 мин.
Для пользователя admin после простаивания более 20 минут приложение приводит к автоматическому выходу на страницу входа.
Согласно моему требованию, автоматический выход из системы для администратора должен составлять 2 часа.
Ранний тайм-аут сеанса происходит для пользователя admin, эта проблема возникает только в живой среде.

Что я уже пробовал:

I used 2 variables inside web config file,
web.config
<pre><appSettings>    
    <add key="AdminUser" value ="120"/> // auto Logout should be 2 hrs for admin
    <add key="OtherUser" value ="15"/>
</appSettings>


<authentication mode="Forms">
			<forms defaultUrl="~/default.aspx" loginUrl="~/login.aspx" slidingExpiration="true" timeout="2880"/>
		</authentication>   
		<sessionState timeout="10800" /> 


Используется две переменные в событии загрузки главной страницы после успешного входа пользователя в систему.
Главная.мастер.в CS
if(LoggedInUser=="Admin")
               {
                   Session.Timeout = Convert.ToInt32(ConfigurationManager.AppSettings.Get("AdminUser"));
               }
               //This condition allows other user types except Admin.
               else
               {
                   Session.Timeout = Convert.ToInt32(ConfigurationManager.AppSettings.Get("OtherUser"));
               }


Commented timeout values from Form tag and session state tag.
Also presumes IIS overriding config values and modified IIS session values to 120 min and checked, but Issue remains same in Live environment. Kindly suggest a solution, Thanks in advance

1 Ответов

Рейтинг:
2

Kornfeld Eliyahu Peter

Я бы подумал об этом: Настройка параметров простоя для пула приложений (IIS 7)[^]
По умолчанию весь рабочий процесс отключается после 20 минут бездействия, и сеанс (по умолчанию в процессе) идет вместе с ним...


punit.vk

Спасибо за ответ @Kornfeld Eliyahu Peter, я попробовал сделать это в пуле приложений, изменив тайм-аут простоя до 5 мин с его предыдущего значения 25 мин.
Приложение не тайм-аут через 5 мин, но все же тайм-аут примерно через 30 мин.