2017-08-04 6 views
2

ich eine Web-Anwendung Umsetzung Frühling mit 4 und Tomcat 7.Spring Security umleiten nicht HTTP auf HTTPS

Ich betreibe die Anwendung auf Tomcat mit SSL-Zertifikat und es funktioniert gut, aber ich möchte jeder zwingen HTTP Anfrage, um zu seiner HTTPS-Anfrage umzuleiten.

Ich habe für Spring Security durchsucht und wie unten einige Konfiguration hinzufügen:

@Configuration 
@EnableWebSecurity 
@EnableGlobalMethodSecurity(securedEnabled = true, prePostEnabled = true, proxyTargetClass = true) 
public class CoreSecurityConfig extends WebSecurityConfigurerAdapter { 

    @Override 
    protected void configure(HttpSecurity http) throws Exception { 
     http 
      .antMatcher("/**") 
      .requiresChannel() 
       .anyRequest().requiresSecure(); 
     http 
      .antMatcher("/**") 
      .portMapper() 
       .http(80).mapsTo(443); 
    } 
} 

aber es scheint nicht richtig funktioniert und keine Umleitung von Spring Security getan.

Gibt es ein Problem mit dieser Konfiguration?

+0

Sie können versuchen, 'http.headers(). HttpStrictTransportSecurity()' hinzuzufügen, um dem Client mitzuteilen, dass er HTTPS verwenden muss. – ngreen

+0

@ngreen Ich füge redirect config tomcat web.xml hinzu und es funktioniert gut. Irgendwie, danke für deine Hilfe. –

Antwort

Verwandte Themen