Application Gateway の TLS ポリシーの概要
Azure Application Gateway を使用すると、TLS/SSL 証明書の管理を一元化し、バックエンド サーバー ファームからの暗号化と復号化のオーバーヘッドを低減することができます。 この一元化された TLS の処理によって、お客様の組織のセキュリティ要件に適したサーバーで中心的な役割を担う TLS ポリシーを指定することもできます。 これにより、コンプライアンス要件やセキュリティ ガイドラインに合致した推奨プラクティスを実行できます。
TLS ポリシーでは、TLS プロトコルのバージョン、暗号スイート、および TLS ハンドシェイク中に使用される暗号の優先順位を制御できます。 Application Gateway には、TLS ポリシーを制御するための 2 つのメカニズムが用意されています。 定義済みのポリシーかカスタム ポリシーのいずれかを使用できます。
使用状況とバージョンの詳細
- SSL 2.0 および 3.0 は、すべてのアプリケーション ゲートウェイに対して無効になっており、設定することはできません。
- カスタム TLS ポリシーでは、ゲートウェイの最小プロトコル バージョンとして、任意の TLS プロトコル(TLSv1_0、TLSv1_1、TLSv1_2、またはTLSv1_3)を選択できます。
- TLS ポリシーが定義されていない場合、最小プロトコル バージョンは TLSv1_0 に設定され、プロトコル バージョン v1.0、v1.1、および v1.2 がサポートされます。
- TLS v1.3 をサポートする 2022 定義済み と Customv2 ポリシー は、Application Gateway V2 SKU (Standard_v2 または WAF_v2) でのみ使用できます。
- 2022 定義済みまたは Customv2 ポリシーを使用すると、ゲートウェイ全体の SSL セキュリティとパフォーマンス体制が強化されます (SSL ポリシーと SSL プロファイル)。 そのため、1つのゲートウェイに古いポリシーと新しいポリシーの両方の共存はできません。 クライアントが古い TLS バージョンまたは暗号(たとえば、TLS v1.0)を必要とする場合、ゲートウェイ全体で古い定義済みポリシーまたはカスタムポリシーのいずれかを使用する必要があります。
- 接続に使用される TLS 暗号化スイートはまた、使用される証明書の種類にも基づきます。 「クライアントからアプリケーション ゲートウェイへの接続」で使用される暗号スイートは,アプリケーション ゲートウェイ上のリスナー証明書の種類に基づきます。 一方、「バックエンド プールへのアプリケーション ゲートウェイ接続」の確立に使用される暗号スイートは、バックエンドサーバーによって提示されるサーバー証明書の種類に基づきます。
定義済み TLS ポリシー
Application Gateway は、いくつかの定義済みのセキュリティポリシーを提供しています。 これらのポリシーを使用してゲートウェイを構成し、適切なセキュリティ レベルを設定できます。 ポリシー名には、構成が行われた年月が付加されます(AppGwSslPolicy<YYYYMMDD>)。 各ポリシーでは、それぞれ異なる TLS プロトコルのバージョンおよび/または暗号スイートが提供されます。 これらの定義済みポリシーは、Microsoft セキュリティ チームからのベスト プラクティスと推奨事項を念頭に置いて構成されています。 最新の TLS ポリシーを使用して、最高レベルの TLS セキュリティを設定することをお勧めします。
次のテーブルは、各定義済みポリシーの暗号スイートと最小プロトコル バージョンのサポート リスト を示しています。 暗号スイートの順位により、TLS ネゴシエーション中の優先順位が決定します。 これらの定義済みポリシーの暗号スイートの正確な順序を知るには、ポータルで PowerShell、CLI、REST API、またはリスナー ブレードを参照できます。
定義済みのポリシー名 (AppGwSslPolicy<YYYYYMMDD>) | 20150501 | 20170401 | 20170401S | 20220101 | 20220101S |
---|---|---|---|---|---|
最小プロトコル バージョン | 1.0 | 1.1 | 1.2 | 1.2 | 1.2 |
有効なプロトコル バージョン | 1.0 1.1 1.2 |
1.1 1.2 |
1.2 | 1.2 1.3 |
1.2 1.3 |
既定 | True | False | False | False | False |
TLS_AES_128_GCM_SHA256 | ✗ | ✗ | ✗ | ✓ | ✓ |
TLS_AES_256_GCM_SHA384 | ✗ | ✗ | ✗ | ✓ | ✓ |
TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 | ✓ | ✓ | ✓ | ✓ | ✓ |
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 | ✓ | ✓ | ✓ | ✓ | ✓ |
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 | ✓ | ✗ | ✗ | ✓ | ✗ |
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 | ✓ | ✗ | ✗ | ✓ | ✗ |
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA | ✓ | ✓ | ✓ | ✗ | ✗ |
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA | ✓ | ✓ | ✓ | ✗ | ✗ |
TLS_DHE_RSA_WITH_AES_256_GCM_SHA384 | ✓ | ✗ | ✗ | ✗ | ✗ |
TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 | ✓ | ✗ | ✗ | ✗ | ✗ |
TLS_DHE_RSA_WITH_AES_256_CBC_SHA | ✓ | ✗ | ✗ | ✗ | ✗ |
TLS_DHE_RSA_WITH_AES_128_CBC_SHA | ✓ | ✗ | ✗ | ✗ | ✗ |
TLS_RSA_WITH_AES_256_GCM_SHA384 | ✓ | ✓ | ✓ | ✗ | ✗ |
TLS_RSA_WITH_AES_128_GCM_SHA256 | ✓ | ✓ | ✓ | ✗ | ✗ |
TLS_RSA_WITH_AES_256_CBC_SHA256 | ✓ | ✓ | ✓ | ✗ | ✗ |
TLS_RSA_WITH_AES_128_CBC_SHA256 | ✓ | ✓ | ✓ | ✗ | ✗ |
TLS_RSA_WITH_AES_256_CBC_SHA | ✓ | ✓ | ✓ | ✗ | ✗ |
TLS_RSA_WITH_AES_128_CBC_SHA | ✓ | ✓ | ✓ | ✗ | ✗ |
TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 | ✓ | ✓ | ✓ | ✓ | ✓ |
TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 | ✓ | ✓ | ✓ | ✓ | ✓ |
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384 | ✓ | ✓ | ✓ | ✓ | ✗ |
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 | ✓ | ✓ | ✓ | ✓ | ✗ |
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA | ✓ | ✓ | ✓ | ✗ | ✗ |
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA | ✓ | ✓ | ✓ | ✗ | ✗ |
TLS_DHE_DSS_WITH_AES_256_CBC_SHA256 | ✓ | ✗ | ✗ | ✗ | ✗ |
TLS_DHE_DSS_WITH_AES_128_CBC_SHA256 | ✓ | ✗ | ✗ | ✗ | ✗ |
TLS_DHE_DSS_WITH_AES_256_CBC_SHA | ✓ | ✗ | ✗ | ✗ | ✗ |
TLS_DHE_DSS_WITH_AES_128_CBC_SHA | ✓ | ✗ | ✗ | ✗ | ✗ |
TLS_RSA_WITH_3DES_EDE_CBC_SHA | ✓ | ✗ | ✗ | ✗ | ✗ |
TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA | ✓ | ✗ | ✗ | ✗ | ✗ |
カスタム TLS ポリシー
お客様の要件に合わせて TLS ポリシーを構成する必要がある場合、カスタム TLS ポリシーを使用できます。 カスタム TLS ポリシーでは、サポートされる最小バージョンの TLS プロトコルと、サポートされる暗号スイートとその優先順位を完全に制御できます。
注意
より新しい強力な暗号と TLSv1.3 のサポートは、CustomV2 ポリシーでのみ利用可能です。 強化されたセキュリティとパフォーマンスの利点を提供します。
重要
- Application Gateway v1 SKU (Standard または WAF) でカスタム SSL ポリシーを使用する場合は、必ず、必須の暗号 "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256" をリストに追加してください。 この暗号は、Application Gateway v1 SKU でメトリックとログを有効にするために必要です。 これは、Application Gateway v2 SKU (Standard_v2 または WAF_v2) では必須ではありません。
- TLSv1.3 では、暗号スイートの “TLS_AES_128_GCM_SHA256” と “TLS_AES_256_GCM_SHA384” は必須です。 PowerShell または CLI を使用して最小プロトコル バージョン 1.2 または 1.3 で CustomV2 ポリシーを設定する場合は、これらを明示的に記載する必要はありません。 したがって、これらの暗号スイートは、Portal を除き、[Get Details] (詳細の取得) の出力には表示されません。
暗号スイート
Application Gateway では、カスタム ポリシーで選択できる次の暗号スイートがサポートされています。 暗号スイートの順位により、TLS ネゴシエーション中の優先順位が決定します。
- TLS_AES_128_GCM_SHA256 (Customv2 でのみ使用可能)
- TLS_AES_256_GCM_SHA384 (Customv2 でのみ使用可能)
- TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
- TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
- TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
- TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
- TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
- TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
- TLS_DHE_RSA_WITH_AES_256_GCM_SHA384
- TLS_DHE_RSA_WITH_AES_128_GCM_SHA256
- TLS_DHE_RSA_WITH_AES_256_CBC_SHA
- TLS_DHE_RSA_WITH_AES_128_CBC_SHA
- TLS_RSA_WITH_AES_256_GCM_SHA384
- TLS_RSA_WITH_AES_128_GCM_SHA256
- TLS_RSA_WITH_AES_256_CBC_SHA256
- TLS_RSA_WITH_AES_128_CBC_SHA256
- TLS_RSA_WITH_AES_256_CBC_SHA
- TLS_RSA_WITH_AES_128_CBC_SHA
- TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
- TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
- TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384
- TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256
- TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
- TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA
- TLS_DHE_DSS_WITH_AES_256_CBC_SHA256
- TLS_DHE_DSS_WITH_AES_128_CBC_SHA256
- TLS_DHE_DSS_WITH_AES_256_CBC_SHA
- TLS_DHE_DSS_WITH_AES_128_CBC_SHA
- TLS_RSA_WITH_3DES_EDE_CBC_SHA
- TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA
制限事項
- バックエンド サーバーへの接続は、常に最小でプロトコル TLS v1.0、最大で TLS v1.2 までです。 そのため、バックエンド サーバーとのセキュリティで保護された接続を確立するには、TLS バージョン 1.0、1.1、1.2 のみがサポートされます。
- 現時点では、TLS 1.3 の実装は "ゼロ ラウンド トリップ時間 (0-RTT)" 機能では有効になっていません。
- Application Gateway v2 は次の DHE 暗号をサポートしていません。 これらは、定義済ポリシーに記載されている場合でも、クライアントとの TLS 接続には使用されません。 DHE 暗号ではなく、安全でより高速な ECDHE 暗号をお勧めします。
- TLS_DHE_RSA_WITH_AES_128_GCM_SHA256
- TLS_DHE_RSA_WITH_AES_128_CBC_SHA
- TLS_DHE_RSA_WITH_AES_256_GCM_SHA384
- TLS_DHE_RSA_WITH_AES_256_CBC_SHA
- TLS_DHE_DSS_WITH_AES_128_CBC_SHA256
- TLS_DHE_DSS_WITH_AES_128_CBC_SHA
- TLS_DHE_DSS_WITH_AES_256_CBC_SHA256
- TLS_DHE_DSS_WITH_AES_256_CBC_SHA
次のステップ
TLS ポリシーの構成について学習したい場合は、Application Gateway での TLS ポリシーのバージョンと暗号スイートの構成に関する記事をご覧ください。