2013-08-06 21 views
0

在我的應用程序中,有一個登錄頁面來驗證用戶帳戶和密碼。需要輸入密碼如果會話空閒

如果用戶點擊一些機密頁面,如工資,個人信息等,會有增強,它會重定向到一個頁面,再次輸入密碼。

爲了避免每個機密頁面的用戶輸入密碼,我想創建一個會話,當用戶第一次點擊機密頁面並輸入正確的密碼。如果閒置時間少於5分鐘,即使點擊其他機密頁面,也不需要再次輸入密碼。否則,如果電腦閒置超過5分鐘,它將重定向到密碼頁...

如何創建上述方法的會話?

在web.config

,它已經爲整個應用

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

我可以分配另一個SessionState的這種做法會話超時? 感謝

回答

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 
+0

太好了。感謝您的建議 –