47 lines
2.7 KiB
XML
47 lines
2.7 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<beans:beans xmlns="http://www.springframework.org/schema/security"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:beans="http://www.springframework.org/schema/beans"
|
|
xsi:schemaLocation="
|
|
http://www.springframework.org/schema/security
|
|
http://www.springframework.org/schema/security/spring-security-3.1.xsd
|
|
http://www.springframework.org/schema/beans
|
|
http://www.springframework.org/schema/beans/spring-beans-3.1.xsd">
|
|
|
|
<http create-session="stateless" use-expressions="true" pattern="/api/**" entry-point-ref="basicAuthenticationEntryPoint">
|
|
<intercept-url pattern="/api/*/authentication" access="permitAll" method="POST" requires-channel="https" />
|
|
<intercept-url pattern="/api/**" access="isFullyAuthenticated()" method="GET" requires-channel="https" />
|
|
<intercept-url pattern="/api/**" access="isFullyAuthenticated()" method="POST" requires-channel="https"/>
|
|
<intercept-url pattern="/api/**" access="isFullyAuthenticated()" method="PUT" requires-channel="https"/>
|
|
<intercept-url pattern="/api/**" access="isFullyAuthenticated()" method="DELETE" requires-channel="https"/>
|
|
<intercept-url pattern="/api/**" access="isFullyAuthenticated()" method="HEAD" requires-channel="https"/>
|
|
|
|
<custom-filter after="SECURITY_CONTEXT_FILTER" ref="basicAuthenticationProcessingFilter" />
|
|
</http>
|
|
|
|
<beans:bean id="basicAuthenticationEntryPoint" class="org.springframework.security.web.authentication.www.BasicAuthenticationEntryPoint">
|
|
<beans:property name="realmName" value="Mifos Platform API" />
|
|
</beans:bean>
|
|
|
|
<beans:bean id="basicAuthenticationProcessingFilter" class="org.mifosplatform.infrastructure.security.filter.TenantAwareBasicAuthenticationFilter">
|
|
<beans:constructor-arg ref="authenticationManager" />
|
|
<beans:constructor-arg ref="basicAuthenticationEntryPoint" />
|
|
</beans:bean>
|
|
|
|
<beans:bean id="passwordEncoder" class="org.springframework.security.authentication.encoding.ShaPasswordEncoder">
|
|
<beans:constructor-arg value="256"/>
|
|
</beans:bean>
|
|
|
|
<beans:bean id="saltSource" class="org.springframework.security.authentication.dao.ReflectionSaltSource">
|
|
<beans:property name="userPropertyToUse" value="id"/>
|
|
</beans:bean>
|
|
|
|
<beans:bean id="customAuthenticationProvider" class="org.springframework.security.authentication.dao.DaoAuthenticationProvider">
|
|
<beans:property name="userDetailsService" ref="userDetailsService" />
|
|
<beans:property name="passwordEncoder" ref="passwordEncoder" />
|
|
<beans:property name="saltSource" ref="saltSource" />
|
|
</beans:bean>
|
|
|
|
<authentication-manager alias="authenticationManager">
|
|
<authentication-provider ref="customAuthenticationProvider" />
|
|
</authentication-manager>
|
|
</beans:beans> |