質問
WAF を使用して、ユーザーがリソースにアクセスする前にサードパーティの ID プロバイダーで認証する必要がある Web アプリケーションを保護できますか?
質問の動機
カスタム アプリケーションをファイアウォールで保護して、悪意のある要求からアプリケーションを保護するルールを作成できるようにしたいと考えています。WAF について読んだとき、それは適切なソリューションのように思えました。WAF は AWS CloudFront と組み合わせて使用する必要があり、CloudFront はパブリックにアクセス可能なコンテンツのみをキャッシュできることを読んだとき、私は心配になりました。プライベート コンテンツをキャッシュするという CloudFront の制限により、WAF ルールがプライベート コンテンツ宛てのリクエストに適用されなくなるのではないかと考え始めました。
背景情報
AWS EC2 インスタンスでホストされるカスタム Web アプリケーションを作成しました。Web アプリケーションには動的コンテンツが含まれており、HTTP GET/OPTIONS/POST/PUT/DELETE 動詞をサポートしています。カスタム Web アプリケーションでは、すべてのユーザーが ID プロバイダーで認証する必要があります。認証されていないユーザーがリソースにアクセスしようとすると、ブラウザーは、Web アプリケーションによってホストされているパブリックにアクセス可能なサインイン ページにリダイレクトされます。サインイン ページから、ユーザーは ID プロバイダーを選択できます。ID プロバイダーが選択されると、ユーザーのブラウザーは ID プロバイダーのログイン ダイアログにリダイレクトされ、資格情報の入力を求められます。認証されると、Web アプリケーション内の要求されたリソースにリダイレクトされます。