私は Azure サポート エンジニアと協力してこれを理解しようとしましたが、彼は問題を特定できませんでした。そのため、誰かがこのシナリオに遭遇したことを願っています。
最初の Azure Front Door をセットアップしました。この段階での構成は非常に単純です。バックエンド プールは、1 つの Web アプリ (Azure App Service) と、Front Door URL からのすべての要求を転送する 1 つのルートだけで構成されます。ウェブアプリの URL に。
問題: 送信するすべてのリクエストで 403 禁止エラーが発生します。
私が行って決定したこと:
Azure Web アプリには、特定の IP アドレスのみが URL にアクセスできるようにするネットワーク セキュリティ制限が設定されています。私の IP アドレスはリストの一部であり、Web アプリの URLに直接アクセスすると、すべてが期待どおりに機能します。Front Door の URL にアクセスしようとすると、403 Forbidden エラーが発生します。
テストとして、IP 制限なしで 2 つ目の Azure Web アプリをセットアップし、それを Front Door のバックエンド プールに追加しました。Front Door から問題なくそのサイトにアクセスできます。ただし、ネットワーク制限リスト (この場合は自分の IP アドレス) に許可エントリを 1 つでも追加するとすぐに、Front Door URL にアクセスすると 403 エラーが発生します。
別のテストとして、IP 制限リストに 0.0.0.0 を追加してすべてを許可しました。それでも、Front Door URL にアクセスしようとすると 403 エラーが発生します。すべてのテスト ケースで、エラーなしで Web アプリの URL に直接アクセスできます。
また、403 エラーの原因となるものがないことを確認するために、Front Door WAF を完全に無効にしました。同じこと - Front Door の URL にアクセスしたときに何があっても 403。
最後に、すべてのテストの間に Front Door のキャッシュで Purge を実行して、そこに何も引っかかっていないことを確認します。
これは、IP 制限にエントリがある Front Door と Web アプリの潜在的なバグのように思えますか? IP 制限なしで非公開 Web アプリの URL を Web に広く公開したままにしておくことは期待できないため、それは私にとって非常に困惑するでしょう?? 誰かがこれを経験して解決しましたか?
編集 1 : Azure サポート エンジニアから、Front Door Service が Web アプリの許可リストに追加するための IP アドレスが提供されました。私は追加しましたが、まだ運が悪い - 403 しかありません。そのネットワーク制限リストに何かがある場合、Front Door は期待どおりに機能しません。
編集 2 : すべてを許可するエントリが間違っているようです - 0.0.0.0/32 に設定しました。これを 0.0.0.0/0 に変更すると、Front Door 経由で Web アプリにアクセスできるようになります。したがって、Allow All を含むリストへのすべてのエントリが 403 エラーを引き起こすという私の最初の評価は正しくありませんでした。正しい評価は、0.0.0.0以外のリストへのエントリ(自分の IP アドレスであっても) は 403 エラーを引き起こすということです。そのため、主な問題は解決しません。IP 制限で Web アプリを保護し、それで Azure Front Door を引き続き使用するにはどうすればよいでしょうか?