针对不同用户的不同会话超时

use*_*578 6 c# asp.net session-timeout

是否可以为不同的用户设置不同的会话超时?我需要为管理员提供180分钟的会话,为非管理员用户提供20分钟的会话.目前,所有用户都是单会话超时.我们正在使用web.config键

任何帮助都会得到满足.

Lea*_*ing 6

Session.Timeout按代码设置属性将根据每个用户设置超时.

您可以在登录时手动设置Session.Timeout = 20;或Session.Timeout = 180;基于用户类型.

此代码应该适合您:

protected void SetSessionTime(string userType)
{
    if (UserType == "admin")
    {
        Session.Timeout = 180;
    }
    else
    {
        Session.Timeout = 20;
    }
}
Run Code Online (Sandbox Code Playgroud)

您可以SetSessionTime()在用户成功登录后进行呼叫.