2016-03-21 12 views
0

Ich bin neu in der Verwendung von Spring Session und Spring Security. Die Hoffnung kann Hilfe bekommen. Ich möchte Spring Session und Spring Security für die REST-API verwenden und Redis zum Speichern der Sitzungsinformationen verwenden. Ich folgte der Probe von http://docs.spring.io/spring-session/docs/current/reference/html5/guides/rest.html, aber ich benutze XML statt Java-Klasse und ich verwende Spring 3.2.4.Spring Session Spring Sicherheitsablage API und Redis

Es gibt kein Problem, wenn ich curl mit Benutzernamen benutze: Passwort, x-auth-Token wird in Redis gespeichert und 200 ok ist in der Kopfzeile erhalten. Problem tritt jedoch auf, wenn ich curl OHNE Benutzername und Passwort benutze. 401 unauthorized erhalten wird, aber es gibt x-Auth-Token im Header zurückgegeben und es wird auch in Redis
< HTTP/1.1 401 Unauthorized * Server Apache-Coyote/1.1 is not blacklisted < Server: Apache-Coyote/1.1 < x-auth-token: 71554566-17d3-44ca-94b8-009d090c61a1 < Content-Type: text/html;charset=utf-8 < Content-Language: en < Content-Length: 1018 < Date: Mon, 21 Mar 2016 14:40:18 GMT

Antwort

0

Ich vermute, dies ist aufgrund der Tatsache, dass die vorherige Anforderung gespeichert wird gespeichert. Sie können dies mit NullRequestCache beheben. In XML können Sie <request-cache> nutzen. Die Konfiguration sieht so etwas wie:

<http ...> 

    <request-cache ref="requestCache"/> 
</http> 

<b:bean id="requestCache" class="org.springframework.security.web.savedrequest.NullRequestCache"/> 
+0

Danke, es funktioniert. Diese Frage verfolgte mich schon seit einigen Tagen. – user6094158

Verwandte Themen