最新の安定バージョンについては、Spring Security 6.5.2 を使用してください! |
HTTP
静的リソース (英語) を含むすべての HTTP ベースの通信は、TLS を使用して [OWASP] (英語) 保護する必要があります。
フレームワークとして、Spring Security は HTTP 接続を処理しないため、HTTPS を直接サポートしません。ただし、HTTPS の使用に役立つ多くの機能を提供します。
Strict Transport Security
Spring Security は Strict Transport Security をサポートし、デフォルトで有効にします。
プロキシサーバー構成
プロキシサーバーを使用する場合は、アプリケーションが適切に構成されていることを確認することが重要です。例: 多くのアプリケーションには、192.168.1:8080 (英語) のアプリケーションサーバーにリクエストを転送することによって example.com/ (英語) のリクエストに応答するロードバランサーがあります。適切な構成がないと、アプリケーションサーバーはロードバランサーが存在することを認識できず、192.168.1:8080 (英語) がリクエストされたかのようにリクエストを処理します。クライアント。
これを修正するには、RFC 7239 [IETF] (英語) を使用して、ロードバランサーが使用されていることを指定できます。アプリケーションにこれを認識させるには、X-Forwarded ヘッダーを認識するようにアプリケーションサーバーを構成する必要があります。例: Tomcat は RemoteIpValve
[Apache] (英語) を使用し、Jetty は ForwardedRequestCustomizer
(英語) を使用します。または、Spring ユーザーは ForwardedHeaderFilter
[GitHub] (英語) を使用できます。
Spring Boot ユーザーは、server.use-forward-headers
プロパティを使用してアプリケーションを構成できます。詳細については、Spring Boot ドキュメントを参照してください。