WAF
を利用することで、CloudFront
や ALB
に対するリクエストのアクセス制御をすることができます。ここでは、CloudFront
に WAF
を紐づけて、特定IPだけアクセスできるようにしてみます。
目次
概念・用語
以下、WAFの利用イメージです。

ACL
ACL
をCloudFront
やALB
に紐付けます。ACL
は、1つ以上のRule
を含みます。- https://docs.aws.amazon.com/ja_jp/waf/latest/developerguide/web-acl-working-with.html
Rule
Rule
は、1つ以上のCondition
を含みます。Condition
に基づいた要求を許可
または拒否
できます。- https://docs.aws.amazon.com/ja_jp/waf/latest/developerguide/web-acl-rules.html
Condition
- リクエストの
ヘッダー値
発信元IPアドレス
などの一致条件を定義します。 - https://docs.aws.amazon.com/ja_jp/waf/latest/developerguide/web-acl-create-condition.html
- リクエストの

管理画面の表示です。
ACL作成
ACLの作成開始

Go to AWS WAF
をクリックします。

Configure web ACL
をクリックします。

ACLの名前を入力して、Nextをクリックします。
Conditionの作成

今回はIP条件を作成します。

「条件の名前」と「IPアドレス」を入力します。
Ruleの作成

Create rule
をクリックします。

条件は、does (条件内)
と does not (条件外)
を選択できます。
今回は、doesを選択して、先ほど作成した Condition
を指定します。
アクションの設定

「作成したRuleのアクション」と「デフォルトアクション」を設定します。
今回は、作成したルールを Allow(許可)
します。
デフォルトをBlock(拒否)
します。
CloudFrontにACLを紐付け

CloudFrontのDistributionの設定で、作成したACLを指定できるようになりました。