HTTP
すべての HTTP ベースの通信は、TLS を使用して保護する必要があります。
このセクションでは、HTTPS の使用を支援するサーブレット固有の機能の詳細について説明します。
HTTPS にリダイレクト
クライアントが HTTPS ではなく HTTP を使用してリクエストを行う場合、HTTPS にリダイレクトするように Spring Security を構成できます。
例: 次の Java または Kotlin 構成は、HTTP リクエストを HTTPS にリダイレクトします。
HTTPS にリダイレクト
Java
Kotlin
@Configuration
@EnableWebSecurity
public class WebSecurityConfig {
@Bean
public SecurityFilterChain filterChain(HttpSecurity http) throws Exception {
http
// ...
.redirectToHttps(withDefaults());
return http.build();
}
}
@Configuration
@EnableWebSecurity
class SecurityConfig {
@Bean
open fun filterChain(http: HttpSecurity): SecurityFilterChain {
http {
// ...
redirectToHttps { }
}
return http.build()
}
}
次の XML 構成は、すべての HTTP リクエストを HTTPS にリダイレクトします
XML 設定で HTTPS にリダイレクトする
<http>
<intercept-url pattern="/**" access="ROLE_USER" requires-channel="https"/>
...
</http>
Strict Transport Security
Spring Security は Strict Transport Security をサポートし、デフォルトで有効にします。
プロキシサーバー構成
Spring Security はプロキシサーバーと統合されます。