timeout
विशेषता में आप जो मान सेट कर रहे हैं वह सत्र टाइमआउट मान सेट करने के सही तरीकों में से एक है।
यह timeout
विशेषता बताती है कि मिनटों की संख्या को छोड़ने से पहले एक सत्र निष्क्रिय हो सकता है। इस विशेषता के लिए डिफ़ॉल्ट मान 20 है।
इस विशेषता के लिए 1 का मान देकर, आपने सत्र को उसके निष्क्रिय होने के बाद 1 मिनट में छोड़ दिया है।
इसका परीक्षण करने के लिए, एक साधारण Aspx पृष्ठ बनाएं, और इस कोड को Page_Load घटना में लिखें,
Response.Write(Session.SessionID);
एक ब्राउज़र खोलें और इस पृष्ठ पर जाएं। एक सत्र आईडी मुद्रित किया जाएगा। एक मिनट के लिए प्रतीक्षा करें, फिर ताज़ा करें। सेशन आईडी बदल जाएगी।
अब, यदि मेरा अनुमान सही है, तो आप सत्र समय समाप्त होते ही अपने उपयोगकर्ताओं को लॉग आउट करना चाहते हैं। ऐसा करने के लिए, आप एक लॉगिन पृष्ठ को रिग कर सकते हैं जो उपयोगकर्ता क्रेडेंशियल्स को सत्यापित करेगा, और इस तरह एक सत्र चर बना सकता है -
Session["UserId"] = 1;
अब, आपको इस चर के लिए हर पेज पर एक चेक करना होगा -
if(Session["UserId"] == null)
Response.Redirect("login.aspx");
यह नंगे-हड्डियों का उदाहरण है कि यह कैसे काम करेगा।
लेकिन, अपने उत्पादन की गुणवत्ता सुरक्षित ऐप्स बनाने के लिए, ASP.NET द्वारा प्रदान की गई रोल्स और सदस्यता वर्गों का उपयोग करें। वे प्रपत्र-आधारित प्रमाणीकरण प्रदान करते हैं जो आपके द्वारा उपयोग किए जा रहे सामान्य सत्र-आधारित प्रमाणीकरण से बहुत अधिक भरोसेमंद है।