/ / Dostęp do określonego zasobu został zabroniony w prostym wiosennym kliencie zdalnym - wiosna, bezpieczeństwo sprężynowe

Dostęp do określonego zasobu został zabroniony w prostym wiosennym kliencie zdalnym - wiosna, bezpieczeństwo sprężynowe

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 № 1

Ochrona 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>