はじめに
この記事はAWS SAA試験勉強のための、AWS WAFに関する知識のまとめです。
AWS WAFとは
AWS WAFは、クロスサイトスクリプティング(XSS)やSQLインジェクションなどの攻撃を検出し、リクエストをブロックできるウェブアプリケーションファイアウォールサービスです。例えば、リクエストの送信元のヘッダー値またはIPアドレスに基づいて、アクセスをフィルター可能です。
「Web ACL」というアクセスコントロールリストで、IPアドレス、HTTPヘッダー、HTTP本文、URI文字列などに対してフィルタリングの条件を設定できます。
対応しているサービス
- Amazon CloudFront
- Amazon API Gateway
- ALB (NLBとCLBには対応していません)
- AppSync GraphQL API
- Cognito ユーザプール
GeoMatch条件
AWS WAFには、GeoMatch条件を使用して国ごとにアクセスを許可またはブロックする機能があります。
例えば、Webサービスへのアクセスを日本国内のみに制限するにはWeb ACLで日本国以外のGeoIPをすべて拒否すればOKです。
WAF Referer制限
Amazon S3バケットにCloudFrontディストリビューションによるコンテンツ配信を構成することで、AWS WAF を利用してReferer制限を実装して、外部からのURLリンクが利用できないようにできます。
できないこと
AWS WAFはインバウンド拒否ルールを設定して特定のIPアドレスをブロックする設定ができません。AWS WAFはウェブACLを作成して、特定のIPアドレスからのアクセスを拒否することができます。