Как перенаправить HTTP-запросы на HTTPS с помощью конфигурации Java Spring Security?
у меня есть приложение Spring Security версии 3.2.3, которое слушает HTTP и HTTPS. Я хочу, чтобы любой запрос к порту HTTP был перенаправлен на HTTPS. Как настроить это только с помощью Java?
Весна безопасности javadoc для HttpSecurity
предлагает следующее решение (обрезанное до существенного):
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
protected void configure(HttpSecurity http) {
http.channelSecurity().anyRequest().requiresSecure();
}
}
однако это не работает, потому что HttpSecurity
не имеет метода channelSecurity()
.
1 ответов
замена channelSecurity()
С requiresChannel()
в коде в вопросе, как представляется, дает желаемое поведение. Затем рабочий код выглядит следующим образом:
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
protected void configure(HttpSecurity http) {
http.requiresChannel().anyRequest().requiresSecure();
}
}