Azure Front Doorのルールセット設定(HTTPリダイレクトで確認)

2020-08-01Azure,Front Door

Azure Front Doorのルールセット(ルール)設定についてHTTPからHTTPSへのリダイレクトを例に確認してみました。

    • ルールセットやルールの概要確認
    • HTTPをHTTPSにリダイレクトするルール作成
    • ルールセットのルートへの割り当て
    • ルール適用時のログを確認

※Azure Front DoorはStandardを利用しています。

スポンサーリンク

Azure Front Doorのルールセットの設定方法を確認

ルールセットとは

ルールセットは、複数のルールの組み合わせを 1 つのセットにまとめたものです。
ルールは、接続元(ブラウザ等)と配信元(バックエンド)の通信内容を操作するものです。
ルールセットはルートに関連付けて利用します。

Azure Front Door のルール セットとは

ルールセットの設定確認

ルールセットを確認します。
1つルールセットの中に複数のルールを記載出来ます。
ルールは上から順番に処理されます。

用語(Azure Front Door のルール セットとは)

ルールのアクションに”残りのルールの評価を停止する”という項目があります。
ルールの条件に該当した場合は、ルールセットの処理を止めるといった事もできます。

ルールセットの確認
左側のメニューにルールセットという項目があります。 Azure Front Doorのルールセット
ルールセットにはルールセット名やルールの設定項目があります。 Azure Front Doorのルールセットの構成

ルールの条件の追加を選択します。
多くの条件設定項目がある事がわかります。

ルール一致条件

※各項目の詳細はリンク先に詳細な記載があります。

Azure Front Doorのルール一致条件

HTTPをHTTPSへリダイレクトするルールを作成

HTTPアクセスをHTTPSにリダイレクトするルールを作成します。
条件に合致したものの動作をアクションで規定します。

Azure Front Door でルール セットを構成する

ルール作成
ルールの条件に要求プロトコルを指定します。
演算子に等しい、要求プロトコルにHTTPを選択します。
Azure Front Doorのルール設定画面
結果は条件合致時の動作を規定します。
URLのリダイレクトを選択します。
リダイレクトの種類にMoved(301)、プロトコルをリダイレクトにHTTPSを指定します。
Azure Front Doorのルール設定画面
ルール名を設定します。 Azure Front Doorのルール設定画面
ルールセット名を付与して保存します。 Azure Front Doorのルール設定画面
作成したルールセットが表示されます。 Azure Front Doorのルール設定画面

ルールセットをルートに関連付け

ルールセットを作成しただけでは利用されません。
ルートにルールセットを関連付けする必要があります。
エンドポイント名を指定して関連付けします。

ルールセットをルートに関連付け
ルールセットの画面で”ルートを関連付け”を選択します。
関連付けするエンドポイント名を選択します。

Azure Front Doorのルールセットとルート関連付け
ルールセットの順序を選択します。
複数のルールセットを利用した場合の優先順位も設定できます。
関連付けを選択します。
Azure Front Doorのルールセットとルート関連付け
ルールセットに関連付けされたルートが表示されます。 Azure Front Doorのルールセットとルート関連付け

ルール適用状況をログから確認

ルートに適用したルールセットの動作を確認します。

※動作確認前にルートのHTTSリダイレクトを外しておきます。

動作確認
ルートの画面でルールセットが適用されている事を確認します。 Azure Front Doorのルート画面でルールを表示
ブラウザでエンドポイントにアクセスします。
HTTPでアクセスした場合でもHTTSにリダイレクトされる事が確認出来ます。

Azure Front Doorの診断設定をしておくとルール適用のログが確認出来ます。
ruleset1のrule1が適用されて301(Moved)している事が確認できます。

Azure Front Doorのアクセスログ

Azure Front Doorのログ確認についてはこちらに纏めています。

ルールは複数組み合わせて利用できる

作成したルールセットにルールを追加してみます。
サンプルではアクセスをyahoo.co.jpにリダイレクトしています。

    • HTTPでエンドポイントへアクセスが来た場合はrule1と2が適用される
    • HTTPSでエンドポイントへアクセスが来た場合はrule2のみが適用される
ルールを複数に適用する事が出来ます。
rule2を追加しています。
yahoo.co.jpへリダイレクトさせています。
リダイレクトの種類にはTemporary Redirect(307)を指定してます。
Azure Front Doorのルール設定
HTTPでフロントエンドにアクセスした際のログです。
rule1とrule2が適用されている事が確認できます。
Azure Front Doorのルール適用ログ

※条件に合致したルールのみがログに表示されます。httpsでエンドポイントにアクセスした場合はrule2のみが条件に合致します。この場合ログにもrule2のみが表示されます。

最後に

Azure Front Doorのルールセット(ルール)設定について確認してみました。
今回はHTTPSへのリダイレクトを例に設定方法を確認してみました。
色々な条件を組み合わせて利用できるため非常に便利な機能かと思います。

引き続き色々試してみたいと思います。

Azure Front Doorのルート設定でのHTTPリダイレクト設定についてはこちらに纏めています。

スポンサーリンク