Front Door のベスト プラクティス

この記事では、Azure Front Door を使用するためのベスト プラクティスを概説します。

全般的なベスト プラクティス

Traffic Manager と Front Door を組み合わせないようにする

ほとんどのソリューションでは、Front Door またはAzure Traffic Managerどちらかを使用することをおすすめします。両方を使用しないでください。 Azure Traffic Manager は、DNS ベースの負荷分散です。 配信元のエンドポイントにトラフィックを直接送信します。 これに対し、Azure Front Door はクライアントの近くのポイント オブ プレゼンス (POP) で接続を終了し、配信元への有効期間の長い接続を個別に確立します。 製品の動作は異なり、さまざまなユース ケースを対象としています。

コンテンツ キャッシングと配信 (CDN)、TLS 終端、高度なルーティング機能、または Web アプリケーション ファイアウォール (WAF) が必要な場合は、Front Door の使用を検討してください。 クライアントからエンドポイントへの直接接続による簡単なグローバル負荷分散の場合は、Traffic Manager の使用を検討してください。 負荷分散オプションの選択の詳細については、「負荷分散のオプション」を参照してください。

ただし、高可用性を必要とする複雑なアーキテクチャの一部として、Azure Front Door の前に Azure Traffic Manager を配置できます。 万一 Azure Front Door が利用できない場合、Azure Traffic Manager は Azure Application Gateway やパートナーのコンテンツ配信ネットワーク (CDN) などの別の宛先にトラフィックをルーティングできます。

重要

Azure Front Door の背後に Azure Traffic Manager を配置しないでください。 Azure Traffic Manager は常に Azure Front Door の前に置く必要があります。

配信元へのトラフィックを制限する

Front Door の機能は、トラフィックが Front Door のみを経由する場合に最適です。 Front Door 経由で送信されていないトラフィックをブロックするように配信元を構成する必要があります。 詳細については、「Azure Front Door の配信元へのトラフィックをセキュリティで保護する」を参照してください。

最新の API バージョンと SDK バージョンを使用する

API、ARM テンプレート、Bicep、Azure SDK を使用して Front Door を操作する場合は、利用可能な最新の API または SDK バージョンを使用することが重要です。 API と SDK の更新は、新しい機能が利用できる場合に発生します。また、重要なセキュリティ パッチやバグ修正も含まれます。

ログを構成する

すべての要求についての広範なテレメトリが Front Door によって追跡されます。 キャッシュを有効にした場合は、配信元サーバーによってすべての要求が受信されるとは限らないため、Front Door ログを使用して、ソリューションの実行とクライアントへの応答の状況を理解することが重要です。 Azure Front Door によって記録されるメトリックとログの詳細については、「Azure Front Door でのメトリックとログの監視」と「WAF ログ」を参照してください。

独自のアプリケーションのログを構成するには、「Azure Front Door ログを構成する」を参照してください。

TLS のベスト プラクティス

エンドツーエンド TLS を使用する

Front Door は、クライアントからの TCP 接続と TLS 接続を終端します。 次に、各ポイント オブ プレゼンス (PoP) から配信元への新しい接続を確立します。 これらの各接続を TLS でセキュリティで保護することをお勧めします (Azure でホストされている配信元の場合であっても)。 この方法により、転送中にデータが常に暗号化されます。

詳細については、「Azure Front Door を使用したエンド ツー エンド TLS」を参照してください。

HTTP から HTTPS へのリダイレクトを使用する

クライアントが HTTPS を使用してサービスに接続するようにすることをお勧めします。 ただし、場合によっては、HTTP 要求を受け入れて、ベスト プラクティスを採用していない可能性がある古いクライアントを許可する必要があります。

HTTPS プロトコルを使用し HTTP 要求を自動的にリダイレクトするように Front Door を構成できます。 ルートで HTTPS 設定を使用するには、[Redirect all traffic to use HTTPS](HTTPS を使用するようにすべてのトラフィックをリダイレクト) を有効にする必要があります。

マネージド TLS 証明書を使用する

Front Door で TLS 証明書を管理すると、運用コストが削減され、証明書の更新忘れにより発生する停止コストを回避できます。 Front Door では、マネージド TLS 証明書の発行と回転が自動的に行われます。

詳細については、「Azure portal を使用して Azure Front Door カスタム ドメインで HTTPS を構成する」を参照してください。

カスタマー マネージド証明書に "最新" バージョンを使用する

独自の TLS 証明書を使用する場合は、Key Vault 証明書のバージョンを "最新" に設定することを検討してください。 "最新" を使用することで、新しいバージョンの証明書を使用するように Front Door を再構成する必要がなくなり、証明書が Front Door の環境全体にデプロイされるのを待つ必要がなくなります。

詳細については、「デプロイする Azure Front Door の証明書を選択する」を参照してください。

ドメイン名のベスト プラクティス

Front Door と配信元で同じドメイン名を使用する

Front Door では、受信要求の Host ヘッダーを書き換えることができます。 この機能は、1 つの配信元にルーティングされるお客様向けカスタム ドメイン名のセットを管理する場合に役立ちます。 この機能は、Front Door と配信元でカスタム ドメイン名を構成することを避ける場合にも役立ちます。 ただし、Host ヘッダーを書き換えると、要求 Cookie と URL リダイレクトが中断する可能性があります。 特に、Azure App Service などのプラットフォームを使用する場合、セッション アフィニティ認証や承認などの機能が正しく機能しない可能性があります。

要求した Host ヘッダーを書き換える前に、アプリケーションが正しく動作するかどうかを慎重に検討してください。

詳細については、「リバース プロキシとそのバックエンド Web アプリケーションの間で、元の HTTP ホスト名を維持する」を参照してください。

Web アプリケーション ファイアウォール (WAF)

WAF を有効にする

インターネットに接続するアプリケーションの場合は、Front Door Web アプリケーション ファイアウォール (WAF) を有効にして、マネージド ルールを使用するように構成することをお勧めします。 WAF と Microsoft マネージド ルールを使用すると、お使いのアプリケーションが広範囲にわたる攻撃から保護されます。

詳細については、「Azure Front Door 上の Web アプリケーション ファイアウォール (WAF)」を参照してください。

WAF のベスト プラクティスに従う

Front Door の WAF には、その構成と使用に関する独自のベスト プラクティスのセットがあります。 詳細については、「Azure Front Door 上の Web アプリケーション ファイアウォールのベスト プラクティス」を参照してください。

正常性プローブのベスト プラクティス

配信元グループに配信元が 1 つしかない場合に正常性プローブを無効にする

Front Door の正常性プローブは、配信元が使用できない、または異常な状況を検出するように設計されています。 正常性プローブで配信元に関する問題が検出されると、Front Door を構成して、配信元グループ内の別の配信元にトラフィックを送信できます。

配信元が 1 つだけの場合、正常性プローブが異常な状態を報告した場合でも、Front Door は常にその配信元にトラフィックをルーティングします。 正常性プローブの状態は、Front Door の動作変更に対しては何も行いません。 このシナリオでは、正常性プローブの利点がないため、配信元のトラフィックを減らすために無効にする必要があります。

詳細については、「正常性プローブ」を参照してください。

正常性プローブの適切なエンドポイントを選択する

Front Door の正常性プローブが監視する場所を検討してください。 通常は、正常性の監視用に特別に設計した Web ページまたは場所を監視することをお勧めします。 アプリケーション ロジックでは、アプリケーション サーバー、データベース、キャッシュなど、運用トラフィックを処理するために必要なすべての重要なコンポーネントの状態を考慮できます。 そうすることで、コンポーネントに障害が発生した場合、Front Door はサービスの別のインスタンスにトラフィックをルーティングできます。

詳細については、「正常性エンドポイントの監視パターン」を参照してください

HEAD 正常性プローブを使用する

正常性プローブでは、GET または HEAD HTTP のいずれかのメソッドを使用できます。 正常性プローブには HEAD メソッドを使用することをお勧めします。これにより、配信元に対するトラフィックの負荷が軽減されます。

詳細については、「正常性プローブでサポートされている HTTP メソッド」を参照してください。

次のステップ

Front Door プロファイルを作成する方法を確認します。