このトピックでは、Application Load Balancer(ALB)でサポートされている非標準 HTTP ヘッダーと、リスナーに非標準 HTTP ヘッダーを追加する方法について説明します。非標準ヘッダーをカスタマイズして機能を実装できます。
ALB でサポートされている非標準 HTTP ヘッダー
HTTP ヘッダーは、HTTP リクエストまたはレスポンスの一部であり、リクエストまたはレスポンスに関する追加情報を伝達します。ビジネス要件に基づいて、ブラウザまたは Web サーバーで非標準 HTTP ヘッダーを構成できます。次の表は、ALB でサポートされている非標準 HTTP ヘッダーについて説明しています。
ヘッダー | 説明 | リスナー プロトコル |
X-Forwarded-For | リスナーは、
形式: |
|
SLB-ID | リスナーは、 |
|
X-Forwarded-Proto | リスナーは、 形式: |
|
X-Forwarded-Port | リスナーは、 形式: |
|
X-Forwarded-Host | リスナーは、 形式: |
|
X-Forwarded-Client-srcport | リスナーは、 形式: |
|
X-Forwarded-Clientcert-subjectdn | リスナーは、 このヘッダーを使用するには、カスタムヘッダーのキーを指定する必要があります。 | HTTPS |
X-Forwarded-Clientcert-issuerdn | リスナーは、 このヘッダーを使用するには、カスタムヘッダーのキーを指定する必要があります。 | HTTPS |
X-Forwarded-Clientcert-fingerprint | リスナーは、 このヘッダーを使用するには、カスタムヘッダーのキーを指定する必要があります。 | HTTPS |
X-Forwarded-Clientcert-clientverify | リスナーは、 このヘッダーを使用するには、カスタムヘッダーのキーを指定する必要があります。 | HTTPS |
リクエストヘッダーの処理時に大文字と小文字を区別しない HTTP 標準に従ってバックエンドサーバーを構成することをお勧めします。
ALB によって作成され、リクエストに追加される X-Forwarded-For ヘッダーは、常に大文字の「X」で始まります。
X-Forwarded-For を除いて、上記のヘッダーについては、ALB は上記で説明したルールに従って処理します。その他のヘッダーについては、ALB はリクエストで元の形式を保持します。
X-Forwarded-Clientcert-subjectdn、X-Forwarded-Clientcert-issuerdn、X-Forwarded-Clientcert-fingerprint、および X-Forwarded-Clientcert-clientverify のカスタムヘッダーキーを以下のように指定することはできません。
slb-id、slb-ip、x-forwarded-for、x-forwarded-proto、x-forwarded-eip、x-forwarded-port、x-forwarded-client-srcport、x-forwarded-host、connection、upgrade、content-length、transfer-encoding、keep-alive、te、host、cookie、remoteip、authority
コンソールで HTTP ヘッダーを追加する
リスナーの作成時に HTTP ヘッダーを追加する
ALB コンソール にログインします。
上部のナビゲーションバーで、ALB インスタンスがデプロイされているリージョンを選択します。
次のいずれかの方法を使用して、リスナー構成ウィザードを開きます。
インスタンス ページで、管理する ALB インスタンスを見つけ、[アクション] 列の リスナーの作成 をクリックします。
インスタンス ページで、管理する ALB インスタンスの ID をクリックします。リスナー タブで、リスナーの作成 をクリックします。
リスナーの設定 ステップで、次のパラメーターを構成し、[次へ] をクリックします。
パラメーター
説明
[リスナー プロトコル]
リスナー プロトコルを選択します。
詳細設定
[変更] をクリックして詳細設定を構成できます。
追加のHTTPヘッダー
追加する HTTP ヘッダーを選択します。
説明その他のパラメーターの詳細については、以下のトピックをご参照ください。
プロンプトに従って構成を完了します。
既存のリスナーに HTTP ヘッダーを追加する
ALB コンソール にログインします。
上部のナビゲーションバーで、ALB インスタンスがデプロイされているリージョンを選択します。
インスタンス ページで、管理する ALB インスタンスの ID をクリックします。
[リスナー] タブをクリックし、管理するリスナーを見つけて、
リスナーの変更[アクション] 列の を選択します。リスナーの変更 ダイアログボックスで、変更詳細設定 の右側にある をクリックします。
追加のHTTPヘッダー セクションで、HTTP ヘッダーを追加または削除し、[保存] をクリックします。
API 呼び出しによって HTTP ヘッダーを追加する
リスナーを作成するために API を呼び出すときに、追加するヘッダーを指定できます。既存のリスナーのヘッダーを追加、保持、または削除するために API を呼び出す場合。
リスナーの作成時に HTTP ヘッダーを追加するには、CreateListener 操作を呼び出すときに、[xforwardedforconfig] パラメーターを設定します。
既存のリスナーの HTTP ヘッダーを管理するには、UpdateListenerAttribute 操作を呼び出すときに、[xforwardedforconfig] パラメーターを変更します。
関連情報
[コンソール操作]
ALB で HTTP リクエストを転送する方法の詳細については、「HTTP リスナーを追加する」をご参照ください。
ALB で HTTPS リクエストを転送する方法の詳細については、「HTTPS リスナーを追加する」をご参照ください。
ALB で QUIC リクエストを転送する方法の詳細については、「QUIC リスナーを追加する」をご参照ください。
[API リファレンス]
CreateListener: HTTP、HTTPS、または QUIC リスナーを作成します。リクエストで [xforwardedforconfig] パラメーターを設定して、HTTP ヘッダーを追加できます。
UpdateListenerAttribute: リスナーの構成を変更します。リクエストで [xforwardedforconfig] パラメーターを変更して、HTTP ヘッダーを追加、保持、または削除できます。