सत्र अमान्यता के साथ चाल काम नहीं करती है। ऐसा लगता है कि स्प्रिंग प्रमाणीकरण सत्र आईडी को कहीं भी बफर करता है और सत्र को अमान्य होने पर भी कुकी को स्वीकार करता है।
public void doManualLogin(HttpServletRequest request, String u, String p) {
UsernamePasswordAuthenticationToken token =
new UsernamePasswordAuthenticationToken(u, p);
token.setDetails(new WebAuthenticationDetails(request));
Authentication auth = authenticationProvider.authenticate(token);
SecurityContextHolder.getContext().setAuthentication(auth);
}
जहां authenticationProvider है:
public void manualLogout() {
SecurityContextHolder.getContext().setAuthentication(null);
}
यहाँ कोड, मैन्युअल रूप से उपयोगकर्ता में लॉग इन करने के लिए कैसे (यदि किसी की जरूरत है) है:
एक अन्य समाधान मैन्युअल रूप से वसंत सुरक्षा संदर्भ स्पष्ट करने के लिए है आप से वसंत विन्यास
org.springframework.security.authentication.AuthenticationProvider
लेकिन इस तरह से, लागू करने के लिए कोड के ऊपर का उपयोग करें अभी भी अपने नमूना URL लॉगआउट के बाद पृष्ठ प्रदर्शित होंगे – Nirmal
आप getSession (http://java.sun.com/javaee/5 से सलाह ले सकते /docs/api/javax/servlet/http/HttpServletRequest.html#getSession%28boolean%29) यदि कोई सत्र अभी भी सक्रिय है। या आप सत्र में अपनी प्रमाणीकरण जानकारी की देखभाल करते हैं। आपको इसे एक इंटरसेप्टर या प्रत्येक नियंत्रक में करना है। –
आपको "मुझे याद रखें" कार्यक्षमता का समर्थन करने के लिए आपके द्वारा सेट की गई किसी भी कुकीज को साफ़ करने की भी आवश्यकता हो सकती है। अन्यथा जब आप साइट पर जाते हैं तो अगली बार आप लॉग इन करेंगे। – David