टिप्पणियों पर जितना अधिक सवाल है, मुझे यकीन नहीं है कि आप कुछ ऐसा करने के बाद हैं जो गतिविधि के बावजूद उपयोगकर्ता को लॉग इन करेगा या निष्क्रियता की अवधि के बाद ही लॉग आउट करेगा।
आप मानक ASP.NET mechanisms उपयोग करने के लिए खुश हैं, तो यह किसी भी बड़े काम के बिना आप के लिए किया जा सकता है:
अपने membership provider सेट करें।
सुनिश्चित करें कि आपका authentication section एक loginUrl परिभाषित करता है:
<authentication mode="Forms">
<forms loginUrl="login.aspx" />
</authentication>
आप forms element पर "समय समाप्ति" विशेषता का उपयोग डिफ़ॉल्ट 30 मिनट के अलावा किसी अन्य समाप्ति सेट कर सकते हैं:
<authentication mode="Forms">
<forms loginUrl="login.aspx" timeout="15"/>
</authentication>
यह प्रवेश करेंगे आपकी साइट पर 15 मिनट की निष्क्रियता के बाद उपयोगकर्ता (या तो ब्राउजर के साथ जावास्क्रिप्ट "दिल की धड़कन" के साथ खुला रहता है या यदि वे किसी अन्य साइट पर 15 मिनट खर्च करते हैं)।
गुमनाम उपयोगकर्ताओं
<authorization>
<deny users="?" />
</authorization>
में पहुंचने से रोका तो है कि अपनी प्रवेश, पंजीकरण और संभवतः पासवर्ड भूल पृष्ठों सभी उपयोगकर्ताओं के लिए सुलभ हैं location Element:
<location path="Logon.aspx">
<system.web>
<authorization>
<allow users="?"/>
</authorization>
</system.web>
</location>
<location path="Register.aspx">
<system.web>
<authorization>
<allow users="?"/>
</authorization>
</system.web>
</location>
<!-- etc -->
इस तरह का उपयोग कर प्रमाणीकरण, जब किसी उपयोगकर्ता की सुनिश्चित कुकी समाप्त हो जाती है, उन्हें आपके फॉर्म पेज के loginUrl तत्व में निर्दिष्ट यूआरएल पर रीडायरेक्ट किया जाएगा।
आप मानक ASP.NET तंत्र का उपयोग नहीं कर रहे हैं, तो आप शायद एक "आधार पेज" प्रकार मॉडल को लागू बेहतर होगा।
System.Web.UI.Page से विरासत में मिली एक नई कक्षा बनाएं जो उपयोगकर्ता की लॉगिन स्थिति की जांच करेगी, और यदि वे लॉग इन/टाइम आउट नहीं हैं तो उन्हें अपने लॉगिन पेज पर रीडायरेक्ट करें।
सिस्टम वेब.यूआई.पेज से विरासत के बजाय, लॉक होने वाले पृष्ठों में, आप अपने बेस पेज क्लास से प्राप्त होते हैं (इस तरह के सेटअप का उदाहरण कुछ समान करने के लिए - प्रत्येक पर सेटिंग सेट करना पेज) my answer here
आपका प्रवेश पृष्ठ में देखा जा सकता शायद iFrame के बाहर वापस कूदने के लिए कुछ उस में जे एस पर्दाफाश फ्रेम की आवश्यकता होगी:
if (top!=self.parent){
top.location=self.parent.location;
}
या आप कह रहे हैं कि "बैक" दबाकर वे अब भी आपके पृष्ठों को ब्राउज़र कैश के माध्यम से देख सकते हैं? जो मामले में आप हर पृष्ठ पर कैश हेडर के साथ चारों ओर खेलने की आवश्यकता होगी:
Response.Cache.SetCacheability(HttpCacheability.NoCache);
ठीक है, ठीक है, उस मामले में आप भी एक जे एस टाइमर वस्तु एक स्थान प्रदर्शन करने के लिए की आवश्यकता होगी। अपने प्रवेश पृष्ठ पर बदलें - यह प्रत्येक पृष्ठ पर एक उपयोगकर्ता नियंत्रण में (बेहतर अभी तक आपके मास्टर पृष्ठ में या,) स्वचालित रूप से n मिनट के बाद उपयोगकर्ता रीडायरेक्ट करने के लिए:
<script type="text/javascript">
setTimeout('location.Replace("/login.aspx")', 900000);
</script>
समय मिलीसेकंड में है, इसलिए इस वसीयत उन्हें 15 मिनट में ले जाएं, और उसके लिए बस पूरे jQuery ढांचे को पाने की आवश्यकता नहीं है।
तुम भी मेटा रिफ़्रेश टैग में देखना चाहते हो सकता है:
<meta http-equiv="refresh" content="900;url=http://example.com/login.aspx" />
कौन सा ब्राउज़र 15 मिनट के बाद प्रवेश पृष्ठ पर ताज़ा करने के लिए बाध्य करेगा (यह एक के सेकंड में)।
लोगों को इस पर समय बिताने के लिए इसे जवाब के रूप में चिह्नित करना चाहिए –