Front Door を作成して構成する
Front Door には、グローバルな規模での高可用性を維持しながら、Web アプリケーションへの要求を高速化するために連携を行ういくつかのコンポーネントがあります。 Front Door サービスを構成するさまざまなコンポーネントと、それらがエンド ユーザーの要求のルーティングでどのような役割を果たしているのかを見てみましょう。
エンドポイント
エンドポイントは、ドメインに関連付けられている 1 つ以上のルートとセキュリティ ポリシーの論理グループです。 Standard または Premium レベルのプロファイルでは、複数のエンドポイントをサポートできます。
ルート
Front Door ルーティング規則によって、各要求が Front Door エッジに到着した後にどのように処理されるかが決定します。 ルートには、ドメインと URL パスを特定の配信元グループにマッピングするための情報が含まれています。 ルート内で、配信元に転送される要求に使用されるプロトコルを構成できます。 また、頻繁に要求されるコンテンツの応答を高速化するためにキャッシュを有効にし、特定の要求の種類を処理する方法のルール セットを設定することもできます。
配信元
origin は、キャッシュが使用できないときに Azure Front Door がコンテンツを取得する元となるアプリケーション デプロイです。 Front Door は、Azure のオンプレミスと、別のクラウドでホストされる両方の配信元をサポートします。 配信元を定義するときは、種類、ホスト名、ホスト ヘッダー、証明書のサブジェクト名の検証、優先度、重みを指定する必要があります。 これらのフィールドを定義すると、受信要求に応答するにはどの origin リソースが最適かを Front Door が判断するのに役立ちます。
配信元グループ
配信元グループは、アプリケーションで同様のトラフィックを受信する、配信元のセットです。 アプリケーションのこの論理的なグループは、同じリージョンにも異なるリージョンにも存在できます。 既定では、要求は最も短い待機時間で配信元に送信されます。 この動作は、配信元グループ内の各配信元の優先度と重みを変更することで変更できます。 また、配信元グループでセッション アフィニティを有効にして、同じユーザーからのすべての要求が確実に同じ配信元リソースに送信されるようにすることもできます。
ルール エンジン
ルール セットとは、カスタマイズされたルール エンジンであり、複数のルールの組み合わせを 1 つのセットにまとめたものです。 ルール セットは、複数のルートに関連付けることができます。 これらのルールは、要求が配信元に転送される前に、Front Door エッジで処理されます。 1 つのルールには、最大で 10 個の一致条件と 5 つのアクションを含めることができます。
ルール一致条件
一致条件は、要求で実行する必要がある特定の種類のアクションを識別します。 ルール内で複数の一致条件を使用する場合、それらは AND ロジックを使用してグループ化されます。
ルール セットには、次の種類の一致条件があります。
- 特定の IP アドレス、ポート、国/地域に基づいて要求をフィルター処理する。
- ヘッダー情報別に要求をフィルター処理する。
- モバイル デバイスまたはデスクトップ デバイスからの要求をフィルター処理する。
- 要求ファイル名とファイル拡張子から要求をフィルター処理する。
- ホスト名、TSL プロトコル、要求 URL、プロトコル、パス、クエリ文字列、ポスト引数、およびその他の値で要求をフィルター処理します。
ルール アクション
アクションとは、それが (複数の) 一致条件に一致した場合に要求の種類に対して適用される動作のことです。 要求が条件に一致したときに、現在実行できるアクションを次に示します。
- ルート構成のオーバーライド - 要求に使用する配信元グループまたはキャッシュ構成をオーバーライドします。
- 要求ヘッダーの変更 - 配信元に送信される要求のヘッダー値を追加、上書き、または削除します。
- 応答ヘッダーの変更 - クライアントに返送される前に、応答のヘッダー値を追加、上書き、または削除します。
- URL リダイレクト - クライアントを異なる URL にリダイレクトします。 Front Door は応答を送信します。
- URL の書き換え - 配信元に送信されている要求のパスを書き換えます。
セキュリティ ポリシー
Front Door では、Web Application Firewall (WAF) のポリシーとルールがサポートされています。 Front Door プロファイルのセキュリティ ポリシーには、プロファイル内のさまざまなドメインに対して使用できる複数の WAF ポリシーが含まれています。 WAF ルールは、SQL インジェクション、クロスサイト スクリプティング、Java 攻撃などの一般的な悪用や脆弱性から Web サービスを保護します。 Front Door 上の WAF に対して現在サポートされている機能は次のとおりです。
- ポリシー設定 - 一連のカスタム ルールとマネージド ルールによって、Web アプリケーションへのアクセスを制御することができます。
- ルールの管理 - 一般的なセキュリティ脅威のセットに対する保護をデプロイする簡単な方法が提供されます。 このルール セットは Azure によって管理されるので、ルールは、新しい攻撃シグネチャに対する防御を行うために必要に応じて更新されます。
- カスタム ルール - ユーザーが定義した条件に基づいて Web アプリケーションへのアクセスを制御できます。 カスタム WAF 規則は、優先順位番号、規則の種類、一致条件、およびアクションで構成されます。
- 除外リスト - WAF 評価から特定の要求属性を省略し、残りの要求を通常のように処理できます。
- ジオフィルタリング - 国または地域別に Web アプリケーションへのアクセスを制限できます。
- ボット保護 - 適切なボットを識別し、不適切なボットから保護するためのボット ルールを提供します。
- IP 制限 - IP アドレスのリストまたは IP アドレスの範囲を指定することにより、Web アプリケーションへのアクセスを制御できます。
- レート制限 - カスタム レート制限規則では、一致条件と受信要求のレートに基づいてアクセスが制御されます。
- チューニング - アプリケーションと組織の WAF 要件のニーズに合わせて WAF ルールを調整できます。 予想されるチューニング機能には、ルール除外の定義、カスタム規則の作成、規則の無効化があります。
- 監視とログ - 監視とログは、Azure Monitor と Azure Monitor ログとの統合を通じて提供されます。
Front Door レベル
Front Door には、Classic、Standard、Premium の 3 つのレベルがあります。 各層では、ユーザーが使用できるさまざまな機能と最適化がサポートされています。 Standard レベルはコンテンツ配信が最適化され、Premium レベルはセキュリティが最適化されています。 各レベルのサポート機能の完全な一覧については、次の表を参照してください。
レベル間の機能の比較
機能と最適化 | Standard | Premium | クラシック |
---|---|---|---|
静的ファイル配信 | はい | イエス | はい |
動的サイト配信 | はい | イエス | はい |
カスタム ドメイン | はい: DNS TXT レコード ベースのドメイン検証 | はい: DNS TXT レコード ベースのドメイン検証 | はい: CNAME ベースの検証 |
キャッシュ管理 (消去、規則、圧縮) | はい | イエス | はい |
配信元の負荷分散 | はい | イエス | はい |
パス ベースのルーティング | はい | イエス | はい |
ルール エンジン | はい | イエス | はい |
サーバー変数 | はい | 有効 | いいえ |
ルール エンジンの正規表現 | はい | 有効 | いいえ |
拡張されたメトリック | はい | 有効 | いいえ |
高度な分析/組み込みレポート | はい | はい: WAF レポートを含む | No |
生ログ: アクセス ログと WAF ログ | はい | イエス | はい |
正常性プローブ ログ | はい | 有効 | いいえ |
カスタム Web アプリケーション ファイアウォール (WAF) 規則 | はい | イエス | はい |
Microsoft マネージド ルール セット | いいえ | はい | はい: 既定のルール セット 1.1 以下のみ |
ボット保護 | いいえ | イエス | いいえ |
プライベート リンクのサポート | いいえ | イエス | いいえ |
簡略化された価格 (基本 + 使用量) | はい | 有効 | いいえ |
Azure Policy の統合 | はい | 有効 | いいえ |
Azure Advisory の統合 | はい | 有効 | いいえ |
プロファイルを作成および構成する
Azure portal、Azure PowerShell、または Azure CLI を使って、Front Door の作成と構成を行うことができます。 Azure CLI の場合、新しいプロファイルを作成するには az afd profile create
コマンドを使います。 Azure PowerShell の方がよければ、New-AzFrontDoor
コマンドレットを使用できます。 ほとんどの操作は、Azure portal を使用して Front Door マネージャーから完了できます。
前にデプロイした自動車部門の Web サイト用の Front Door プロファイルを作成して構成してみましょう。