2011-09-19 21 views
8

के लिए प्रमाणीकरण SUccessHandler उदाहरण मैं वसंत सुरक्षा 3 के लिए एक नौसिखिया हूँ। मैं लॉगिन करने के लिए उपयोगकर्ताओं के लिए भूमिका का उपयोग कर रहा हूँ।वसंत सुरक्षा 3

मैं उस उपयोगकर्ता की भूमिका के आधार पर किसी उपयोगकर्ता को एक अलग पृष्ठ पर रीडायरेक्ट करना चाहता हूं, मुझे समझ में आता है कि मुझे AuthenticationSuccessHandler को इसके लिए लागू करना होगा, लेकिन उस दिशा में कुछ उदाहरण मदद करेंगे।

अग्रिम धन्यवाद, विवेक

उत्तर

23

आप कुछ इस तरह कर सकते हैं: इस ऐड

public class Test implements AuthenticationSuccessHandler { 
    public void onAuthenticationSuccess(HttpServletRequest request, HttpServletResponse response, Authentication authentication) { 
     Set<String> roles = AuthorityUtils.authorityListToSet(authentication.getAuthorities()); 
     if (roles.contains("ROLE_USER") { 
      response.sendRedirect("/userpage"); 
     } 
    } 
} 

एक्सएमएल config में:

<bean id="authenticationFilter" class="YOUR_AUTH_FILTER_HERE"> 
    <!-- There might be more properties here, depending on your auth filter!! --> 
    <property name="authenticationSuccessHandler" ref="successHandler" /> 
</bean> 

<bean id="successHandler" class="Test"/> 
+0

ठीक है, और वसंत-सुरक्षा में। एक्सएमएल, मैं इस कस्टम हैंडलर (टेस्ट) – Vivek

+0

को कैसे शामिल कर सकता हूं मैंने तदनुसार अपना जवाब अपडेट कर लिया है। – nfechner

+0

आपकी मदद के लिए बहुत बहुत धन्यवाद। यह एक आकर्षण की तरह काम करता है :) – Vivek

संबंधित मुद्दे