|
@@ -8,83 +8,19 @@
|
|
<beans xmlns="http://www.springframework.org/schema/beans"
|
|
<beans xmlns="http://www.springframework.org/schema/beans"
|
|
xmlns:sec="http://www.springframework.org/schema/security"
|
|
xmlns:sec="http://www.springframework.org/schema/security"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
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">
|
|
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>
|
|
</beans>
|