2014-10-15 3 views
8

Ich entwickle Restful API Server mit Spring Boot. Ich habe mein Projekt so konfiguriert, dass die Standardauthentifizierung wie folgt verwendet wird.Wie Spring Booth nie Session-Cookie ausstellen?

@ComponentScan 
@EnableAutoConfiguration 
@EnableWebSecurity 
@Configuration 
public class WebSecurityConfig extends WebSecurityConfigurerAdapter { 
    ... 
    @Override 
    protected void configure(HttpSecurity http) throws Exception { 
     http.sessionManagement().sessionCreationPolicy(SessionCreationPolicy.NEVER).and() 
      .csrf().disable() 
      .authorizeRequests().anyRequest().hasRole("USER").and() 
      .httpBasic(); 
    } 
    ... 
} 

Aber wenn ich die API von Chrome-Postman-Plugin getestet, nach dem ersten Anruf, Server erfordert nie Anmeldeinformationen des Benutzers. Und ich habe bemerkt, dass 'JSESSIONID' Cookie erstellt wurde.

Es gibt keine andere Sicherheitskonfiguration in meinem Projekt. Ich frage mich, warum das passiert ...

+0

Erweitert Ihre Konfigurationsklasse den WebSecurityConfigurerAdapter? – Modi

+0

Ja. Ich habe mein Code-Snippet bearbeitet. Ich möchte sicher, dass mein API-Server keine Sitzung verwaltet. – jyshin

+0

OK, zuerst, lassen Sie uns überprüfen, ob die Authentifizierung erzwungen wird. Können Sie Ihre Konfiguration mit diesem versuchen zu ersetzen. Http.csrf() \t \t \t \t .disable() \t \t \t \t .authorizeRequests() \t \t \t \t .anyRequest() authentifiziert() – Modi

Antwort

10

Haben Sie versucht, mit SessionCreationPolicy.STATELESS. Es gibt einen feinen Unterschied zwischen STATELESS und NEVER im spring docs:

STATELESS: Spring Security wird nie ein HttpSession schaffen, und es wird sie nie die SecurityContext zu erhalten verwenden.

NEVER: Spring Security wird nie ein HttpSession, schaffen, sondern die Http verwenden, wenn es bereits existiert.

Also ich würde vorschlagen, dass Sie alle Ihre Cookies löschen, wechseln Sie zu STATELESS und versuchen Sie es erneut. Es könnte sein, dass du schon einen HttpSession hast, als du zu NEVER gewechselt hast.

+0

Kudos für Warnung vor die Mehrdeutigkeit. – pyb

Verwandte Themen