복붙노트

[SPRING] 스프링 보안 Java 설정을 사용하여 HTTP 요청을 HTTPS로 리디렉션하는 방법은 무엇입니까?

SPRING

스프링 보안 Java 설정을 사용하여 HTTP 요청을 HTTPS로 리디렉션하는 방법은 무엇입니까?

HTTP와 HTTPS를 모두 청취하는 Spring Security 버전 3.2.3 애플리케이션이 있습니다. 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. ==============================

    1.질문의 코드에서 channelSecurity ()를 requiresChannel ()으로 바꾸면 원하는 동작이 나타납니다. 작업 코드는 다음과 같이 나타납니다.

    질문의 코드에서 channelSecurity ()를 requiresChannel ()으로 바꾸면 원하는 동작이 나타납니다. 작업 코드는 다음과 같이 나타납니다.

    public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
        protected void configure(HttpSecurity http) {
            http.requiresChannel().anyRequest().requiresSecure();
        }
    }
    
  2. from https://stackoverflow.com/questions/24650450/how-to-redirect-http-requests-to-https-using-spring-security-java-configuration by cc-by-sa and MIT license