From: <dcr...@hy...> - 2010-01-25 21:23:08
|
Author: dcrutchf Date: 2010-01-25 13:23:01 -0800 (Mon, 25 Jan 2010) New Revision: 14232 URL: http://svn.hyperic.org/?view=rev&root=Hyperic+HQ&revision=14232 Modified: trunk/web/META-INF/security-context.xml Log: Added request caching filter so login redirects to the previously requested page Modified: trunk/web/META-INF/security-context.xml =================================================================== --- trunk/web/META-INF/security-context.xml 2010-01-25 09:27:13 UTC (rev 14231) +++ trunk/web/META-INF/security-context.xml 2010-01-25 21:23:01 UTC (rev 14232) @@ -25,10 +25,12 @@ sessionManagementFilter, filterSecurityInterceptor" /> <sec:filter-chain pattern="/**" filters="securityContextPersistenceFilter, - logoutFilter, + logoutFilter, basicAuthenticationFilter, formBasedAuthenticationFilter, - sessionManagementFilter, + requestCacheAwareFilter, + securityContextHolderAwareRequestFilter, + sessionManagementFilter, formAuthenticationExceptionTranslationFilter, filterSecurityInterceptor" /> </sec:filter-chain-map> @@ -69,12 +71,15 @@ </bean> <!-- For form-based authentication --> + <bean id="httpSessionRequestCache" class="org.springframework.security.web.savedrequest.HttpSessionRequestCache" /> + <bean id="formBasedAuthenticationFilter" class="org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter"> <property name="authenticationManager" ref="authenticationManager" /> <property name="sessionAuthenticationStrategy" ref="sessionInitializationStrategy" /> <property name="authenticationSuccessHandler"> - <bean class="org.springframework.security.web.authentication.SimpleUrlAuthenticationSuccessHandler"> + <bean class="org.springframework.security.web.authentication.SavedRequestAwareAuthenticationSuccessHandler"> <property name="defaultTargetUrl" value="/Dashboard.do" /> + <property name="requestCache" ref="httpSessionRequestCache" /> <property name="redirectStrategy"> <bean class="org.hyperic.hq.ui.security.RegistrationRedirectStrategy"> <constructor-arg value="/admin/user/UserAdmin.do?mode=register" /> @@ -95,8 +100,15 @@ <bean id="formAuthenticationExceptionTranslationFilter" class="org.springframework.security.web.access.ExceptionTranslationFilter"> <property name="authenticationEntryPoint" ref="formAuthenticationEntryPoint" /> + <property name="requestCache" ref="httpSessionRequestCache" /> </bean> + <!-- Request cache aware filter, this makes sure the original request is used after authenticating --> + <bean id="requestCacheAwareFilter" class="org.springframework.security.web.savedrequest.RequestCacheAwareFilter" /> + + <!-- Security context holder aware request filter --> + <bean id="securityContextHolderAwareRequestFilter" class="org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter" /> + <!-- Setup session management filter --> <bean id="sessionManagementFilter" class="org.springframework.security.web.session.SessionManagementFilter"> <constructor-arg ref="securityContextRepository" /> |