Próbuję ze zdalnym klientem wiosennym z funkcjami bezpieczeństwa, bez zabezpieczeń działają dobrze, ale kiedy dodaję DelegatingFilterProxy, widzę błąd 403 z komunikatem zakazanym.
Oto moja konfiguracja
<bean id="provisioningService"
class="com.ravisha.spring.remote.httpinvoker.ProvisioningServiceImpl" />
<bean name="/provisioningService"
class="org.springframework.remoting.httpinvoker.HttpInvokerServiceExporter">
<property name="service" ref="provisioningService" />
<property name="serviceInterface" value="com.ravisha.spring.remote.httpinvoker.ProvisioningService"/>
</bean>
<security:http>
<security:http-basic/>
<security:intercept-url pattern="/provisioningService" access="hasRole("ROLE_USER") "/>
</security:http>
<security:authentication-manager alias="authenticationManager">
<security:authentication-provider>
<security:user-service id="uds">
<security:user name="test" password="test"
authorities="ROLE_USER" />
</security:user-service>
</security:authentication-provider>
</security:authentication-manager>
</beans>
Odpowiedzi:
0 dla odpowiedzi № 1Ochrona CSRF jest domyślnie włączona w Spring Security od wersji 4. Dla HttpInvoker nie potrzebujesz go i możesz go wyłączyć.
<security:http create-session="stateless">
<security:csrf disabled="true"/>
<security:http-basic/>
<security:intercept-url pattern="/provisioningService" access="hasRole("ROLE_USER") "/>
</security:http>