クラス ForwardedHeaderUtils
java.lang.ObjectSE
org.springframework.web.util.ForwardedHeaderUtils
"Forwarded" および "X-Forwarded-*" ヘッダーの処理を支援するユーティリティクラス。
注意 : 転送ヘッダーの使用にはセキュリティ上の考慮事項があります。これらは、アプリケーションが挿入し、外部ソースからのヘッダーを明示的に削除する信頼できるプロキシの背後にない限り、使用すべきではありません。
ほとんどの場合、ヘッダーから情報をできるだけ早く抽出し、そのようなヘッダーを破棄するために、このクラスを直接使用するのではなく、Spring MVC または ForwardedHeaderTransformer
の ForwardedHeaderFilter
に依存する必要があります。Tomcat、Jetty、Reactor Netty などの基盤となるサーバーには、転送されたヘッダーをさらに早い段階で処理するオプションも用意されています。
- 導入:
- 6.1
- 作成者:
- Rossen Stoyanchev
コンストラクターのサマリー
方法の概要
修飾子と型メソッド説明static UriComponentsBuilder
adaptFromForwardedHeaders
(URISE uri, HttpHeaders headers) static InetSocketAddressSE
parseForwardedFor
(URISE uri, HttpHeaders headers, InetSocketAddressSE remoteAddress) 最初の「転送済み」を解析します: クライアントのアドレスを表すInetSocketAddress
への for =... " または " X-Forwarded-For " ヘッダー値。
コンストラクターの詳細
ForwardedHeaderUtils
public ForwardedHeaderUtils()
メソッドの詳細
adaptFromForwardedHeaders
指定されたURI
SE のスキーム + ホスト + ポートを、"Forwarded" ヘッダー ( RFC 7239 を参照)、または "X-Forwarded-Host"、"X-Forwarded-Port"、"X-Forwarded-Proto" ヘッダーから適合させます。「転送済み」は存在しません。- パラメーター:
uri
- リクエストURI
headers
- 考慮すべき HTTP ヘッダー- 戻り値:
- リクエスト URI と転送されたヘッダーからの追加の更新を反映する
UriComponentsBuilder
parseForwardedFor
@Nullable public static InetSocketAddressSE parseForwardedFor(URISE uri, HttpHeaders headers, @Nullable InetSocketAddressSE remoteAddress) 最初の「転送済み」を解析します: クライアントのアドレスを表すInetSocketAddress
への for =... " または " X-Forwarded-For " ヘッダー値。- パラメーター:
uri
- リクエストURI
headers
- 転送されたヘッダーが含まれる可能性があるリクエストヘッダーremoteAddress
- 現在のリモートアドレス- 戻り値:
- 抽出されたホストとポートを含む
InetSocketAddress
、またはヘッダーが存在しない場合はnull
- 関連事項: