如何使用Spring Security Java配置将HTTP请求重定向到HTTPS?

时间:2014-07-09 09:51:06

标签: java spring security spring-security spring-java-config

我有一个Spring Security版本3.2.3应用程序,它可以监听HTTP和HTTPS。我希望将对HTTP端口的任何请求重定向到HTTPS。如何仅使用Java配置它?

Spring Security javadoc for HttpSecurity提出以下解决方案(修剪为必要的):

public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
    protected void configure(HttpSecurity http) {
        http.channelSecurity().anyRequest().requiresSecure();
    }
}

然而,这不起作用,因为HttpSecurity没有方法channelSecurity()

1 个答案:

答案 0 :(得分:14)

在问题代码中用channelSecurity()替换requiresChannel()似乎可以提供所需的行为。然后,工作代码如下所示:

public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
    protected void configure(HttpSecurity http) {
        http.requiresChannel().anyRequest().requiresSecure();
    }
}