|
|
|
|
@ -8,83 +8,19 @@
@@ -8,83 +8,19 @@
|
|
|
|
|
<beans xmlns="http://www.springframework.org/schema/beans" |
|
|
|
|
xmlns:sec="http://www.springframework.org/schema/security" |
|
|
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" |
|
|
|
|
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd |
|
|
|
|
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.1.xsd |
|
|
|
|
http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security.xsd"> |
|
|
|
|
|
|
|
|
|
<bean id="filterChainProxy" class="org.springframework.security.web.FilterChainProxy"> |
|
|
|
|
<sec:filter-chain-map request-matcher="ant"> |
|
|
|
|
<sec:filter-chain pattern="/**" filters="sif,j2eePreAuthFilter,logoutFilter,etf,fsi"/> |
|
|
|
|
</sec:filter-chain-map> |
|
|
|
|
</bean> |
|
|
|
|
<sec:http> |
|
|
|
|
<sec:intercept-url pattern="/secure/extreme/**" access="hasRole('ROLE_SUPERVISOR')"/> |
|
|
|
|
<sec:intercept-url pattern="/secure/**" access="hasRole('ROLE_USER')"/> |
|
|
|
|
<sec:intercept-url pattern="/**" access="hasRole('ROLE_USER')"/> |
|
|
|
|
|
|
|
|
|
<bean id="sif" class="org.springframework.security.web.context.SecurityContextPersistenceFilter"/> |
|
|
|
|
<sec:jee mappable-roles="ROLE_USER,ROLE_SUPERVISOR" /> |
|
|
|
|
|
|
|
|
|
<sec:authentication-manager alias="authenticationManager"> |
|
|
|
|
<sec:authentication-provider ref='preAuthenticatedAuthenticationProvider'/> |
|
|
|
|
</sec:authentication-manager> |
|
|
|
|
<sec:logout /> |
|
|
|
|
</sec:http> |
|
|
|
|
|
|
|
|
|
<bean id="preAuthenticatedAuthenticationProvider" class="org.springframework.security.web.authentication.preauth.PreAuthenticatedAuthenticationProvider"> |
|
|
|
|
<property name="preAuthenticatedUserDetailsService" ref="preAuthenticatedUserDetailsService"/> |
|
|
|
|
</bean> |
|
|
|
|
|
|
|
|
|
<bean id="preAuthenticatedUserDetailsService" |
|
|
|
|
class="org.springframework.security.web.authentication.preauth.PreAuthenticatedGrantedAuthoritiesUserDetailsService"/> |
|
|
|
|
|
|
|
|
|
<bean id="j2eePreAuthFilter" class="org.springframework.security.web.authentication.preauth.j2ee.J2eePreAuthenticatedProcessingFilter"> |
|
|
|
|
<property name="authenticationManager" ref="authenticationManager"/> |
|
|
|
|
<property name="authenticationDetailsSource"> |
|
|
|
|
<bean class="org.springframework.security.web.authentication.preauth.j2ee.J2eeBasedPreAuthenticatedWebAuthenticationDetailsSource"> |
|
|
|
|
<property name="mappableRolesRetriever"> |
|
|
|
|
<bean class="org.springframework.security.web.authentication.preauth.j2ee.WebXmlMappableAttributesRetriever" /> |
|
|
|
|
</property> |
|
|
|
|
<property name="userRoles2GrantedAuthoritiesMapper"> |
|
|
|
|
<bean class="org.springframework.security.core.authority.mapping.SimpleAttributes2GrantedAuthoritiesMapper"> |
|
|
|
|
<property name="convertAttributeToUpperCase" value="true"/> |
|
|
|
|
</bean> |
|
|
|
|
</property> |
|
|
|
|
</bean> |
|
|
|
|
</property> |
|
|
|
|
</bean> |
|
|
|
|
|
|
|
|
|
<bean id="preAuthenticatedProcessingFilterEntryPoint" |
|
|
|
|
class="org.springframework.security.web.authentication.Http403ForbiddenEntryPoint"/> |
|
|
|
|
|
|
|
|
|
<bean id="logoutFilter" class="org.springframework.security.web.authentication.logout.LogoutFilter"> |
|
|
|
|
<constructor-arg value="/"/> |
|
|
|
|
<constructor-arg> |
|
|
|
|
<list> |
|
|
|
|
<bean class="org.springframework.security.web.authentication.logout.SecurityContextLogoutHandler"/> |
|
|
|
|
</list> |
|
|
|
|
</constructor-arg> |
|
|
|
|
</bean> |
|
|
|
|
|
|
|
|
|
<bean id="etf" class="org.springframework.security.web.access.ExceptionTranslationFilter"> |
|
|
|
|
<constructor-arg ref="preAuthenticatedProcessingFilterEntryPoint"/> |
|
|
|
|
</bean> |
|
|
|
|
|
|
|
|
|
<bean id="httpRequestAccessDecisionManager" class="org.springframework.security.access.vote.AffirmativeBased"> |
|
|
|
|
<constructor-arg> |
|
|
|
|
<list> |
|
|
|
|
<ref bean="roleVoter"/> |
|
|
|
|
</list> |
|
|
|
|
</constructor-arg> |
|
|
|
|
<property name="allowIfAllAbstainDecisions" value="false"/> |
|
|
|
|
</bean> |
|
|
|
|
|
|
|
|
|
<bean id="fsi" class="org.springframework.security.web.access.intercept.FilterSecurityInterceptor"> |
|
|
|
|
<property name="authenticationManager" ref="authenticationManager"/> |
|
|
|
|
<property name="accessDecisionManager" ref="httpRequestAccessDecisionManager"/> |
|
|
|
|
<property name="securityMetadataSource"> |
|
|
|
|
<sec:filter-security-metadata-source use-expressions="false"> |
|
|
|
|
<sec:intercept-url pattern="/secure/extreme/**" access="ROLE_SUPERVISOR"/> |
|
|
|
|
<sec:intercept-url pattern="/secure/**" access="ROLE_USER"/> |
|
|
|
|
<sec:intercept-url pattern="/**" access="ROLE_USER"/> |
|
|
|
|
</sec:filter-security-metadata-source> |
|
|
|
|
</property> |
|
|
|
|
</bean> |
|
|
|
|
|
|
|
|
|
<bean id="roleVoter" class="org.springframework.security.access.vote.RoleVoter"/> |
|
|
|
|
|
|
|
|
|
<bean id="securityContextHolderAwareRequestFilter" class="org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter"/> |
|
|
|
|
<sec:authentication-manager /> |
|
|
|
|
|
|
|
|
|
</beans> |
|
|
|
|
|