次の方法で共有


Application Gateway WAF を使用してアプリケーションを保護する

概要

Microsoft Entra アプリケーション プロキシを使用して発行されたアプリの Web アプリケーション ファイアウォール (WAF) 保護を追加します。

Web アプリケーション ファイアウォールの詳細については、「Azure Application Gateway の Azure Web アプリケーション ファイアウォールとは」を参照してください。

展開の手順

この記事では、Application Gateway 上の Azure WAF で Microsoft Entra アプリケーション プロキシを使用して、インターネット上の Web アプリケーションを安全に公開する手順について説明します。

Azure WAF と Application Gateway を介してインターネットから Microsoft Entra アプリケーション プロキシと内部アプリケーション サーバーへの Web アプリケーション トラフィック フローを示すアーキテクチャ図。

内部アプリケーションにトラフィックを送信するように Azure Application Gateway を構成する

この記事では、Application Gateway 構成の一部の手順を省略しています。 Application Gateway の作成と構成の詳細なガイドについては、「クイック スタート: Azure Application Gateway を使用した Web トラフィックのダイレクト - Microsoft Entra 管理センター」を参照してください。

1. プライベートに接続する HTTPS リスナーを作成する

ユーザーが企業ネットワークに接続したときに Web アプリケーションにプライベートにアクセスできるようにリスナーを作成します。

企業ネットワーク ユーザーのプライベート アクセス設定を示す Application Gateway リスナー構成ページ。

2. Web サーバーを使用してバックエンド プールを作成する

この例では、バックエンド サーバーにインターネット インフォメーション サービス (IIS) がインストールされています。

IIS Web サーバーを示す Application Gateway バックエンド プールの構成。

3. バックエンド設定を作成する

バックエンド設定は、要求がバックエンド プール サーバーに到達する方法を決定します。

要求ルーティング パラメーターを示す Application Gateway バックエンド設定の構成ページ。

4. リスナー、バックエンド プール、および前の手順で作成したバックエンド設定を結び付け、ルーティング規則を作成する

リスナーの選択手順を示す Application Gateway ルーティング規則の構成ページ。 バックエンド プールとバックエンド設定の選択を示す Application Gateway ルーティング規則の構成ページ。

5. Application Gateway で WAF を有効にし、防止モードに設定する

[防止モード] が選択された状態で WAF が有効になっていることを示す Application Gateway WAF 構成ページ。

Microsoft Entra ID でアプリケーション プロキシを介してリモートアクセスされるようにアプリケーションを構成する

コネクタ VM、Application Gateway、バックエンド サーバーの両方が、Azure の同じ仮想ネットワークにデプロイされます。 このセットアップは、オンプレミスにデプロイされたアプリケーションとコネクタにも適用されます。

アプリケーションを Microsoft Entra ID のアプリケーション プロキシに追加する方法の詳細なガイドについては、「チュートリアル: Microsoft Entra IDのアプリケーション プロキシを介してリモート アクセスするためのオンプレミス アプリケーションを追加する」を参照してください。 プライベート ネットワーク コネクタに関するパフォーマンスに関する考慮事項の詳細については、「Microsoft Entra アプリケーション プロキシを使用したトラフィック フローの最適化」を参照してください。

ポート 443 アクセスの内部 URL と外部 URL が一致する Microsoft Entra アプリケーション プロキシ構成。

この例では、同じ URL が内部 URL と外部 URL として構成されています。 リモート クライアントは、アプリケーション プロキシを介して、ポート 443 でインターネット経由でアプリケーションにアクセスします。 企業ネットワークに接続されているクライアントは、アプリケーションにプライベートにアクセスします。 アクセスは、ポート 443 上の Application Gateway を介して直接行われます。 アプリケーション プロキシでカスタム ドメインを構成する詳細な手順については、「Microsoft Entra アプリケーション プロキシを使用してカスタム ドメインを構成する」を参照してください。

Azure プライベート ドメイン ネーム システム (DNS) ゾーン は、A レコードで作成されます。 A レコードは、Application Gateway のプライベート フロントエンド IP アドレスに www.fabrikam.one をポイントします。 このレコードにより、コネクタ VM が Application Gateway に要求を送信することが保証されます。

アプリケーションをテストする

のテスト用にユーザーを追加後、https://www.fabrikam.oneにアクセスしてアプリケーションをテストできます。 ユーザーは Microsoft Entra ID で認証するように求められます。認証が成功すると、アプリケーションにアクセスします。

ユーザーに認証を求める Microsoft Entra ID サインイン ページ。 認証後のアプリケーション アクセスの成功を示すブラウザー。

攻撃をシミュレートする

WAF が悪意のある要求をブロックしているかどうかをテストするには、基本的な SQL インジェクション署名を使用して攻撃をシミュレートできます。 (例: https://www.fabrikam.one/api/sqlquery?query=x%22%20or%201%3D1%20--")。

WAF による SQL インジェクションの試行をブロックする HTTP 403 Forbidden エラーを示すブラウザー。

HTTP 403 応答は、WAF が要求をブロックしたことを確認します。

Application Gateway ファイアウォールのログ は、要求の詳細およびWAFがそれをブロックしている理由を提供します。

ブロックされた要求の詳細と SQL インジェクション規則違反を示す Application Gateway ファイアウォールのログ エントリ。

次のステップ