【问题标题】:Require input password if session idle如果会话空闲,需要输入密码
【发布时间】:2013-08-06 15:56:58
【问题描述】:

在我的应用程序中,有一个用于验证用户帐户和密码的登录页面。

如果用户点击一些机密页面,如工资、个人详细信息等,它将重定向到一个页面以再次输入密码。

为了避免用户为每个机密页面输入密码,我想在用户第一次点击机密页面并输入正确密码时创建一个会话。如果空闲时间少于 5 分钟,即使点击其他机密页面,也无需再次输入密码。否则,如果电脑空闲超过 5 分钟,它会重定向到密码页面...

如何为上述方法创建会话?

在 web.config 中,它已经有整个应用程序的会话超时

<system.web>  
<sessionState timeout="240"></sessionState>
</system.web> 

我可以为这种方法分配另一个会话状态吗? 谢谢

【问题讨论】:

    标签: asp.net vb.net session session-timeout


    【解决方案1】:

    我建议在 Session 值本身上存储一个时间戳,如下所示:

    Session("ConfidentialPageAccess") = DateTime.Now
    

    然后当你想检查Session的值时,你可以将存储的值与“现在”减去5分钟进行比较,如下所示:

    Dim dateConfidentialPageAccess = TryCast(Session("ConfidentialPageAccess"), DateTime)
    
    If (dateConfidentialPageAccess - DateTime.Now).TotalMinutes > 5 Then
        ' Redirect to login page
    End If
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-09-06
      • 2019-11-28
      • 2015-12-24
      • 2013-08-21
      • 1970-01-01
      • 2010-10-08
      • 2011-05-19
      • 1970-01-01
      相关资源
      最近更新 更多