
AWS Application Load Balancer (ALB) コンソールから CloudFront+WAF を統合できるようになったので、検証してみました。
アップデート概要
これまでは、ALBの前段にCloudFront+WAFを作成しようとすると、各画面でセットアップして手動で関連付ける必要があった
今回のアップデートで、AWS Application Load Balancer (ALB) コンソールから CloudFront+WAF をシームレスに統合できるようになった
ALBからCloudFront+WAFを作成してみる
「EC2」→「ロードバランサー」の画面で「ロードバランサ―の作成」をクリックします。

ALBの「作成」を選択します。

「サービスの統合で最適化」に「Amazon CloudFront + AWS Web Application Firewall (WAF) 」が表示されていることが確認できるので、これにチェックを入れます。

「Security best practice」のチェックボックスがあるので、こちらもチェックを入れます。

ちなみに、こちらにチェックを入れると、AWSのセキュリティベストプラクティスに従い、ALBへのアクセスをCloudFrontからのみに限定できます。
ALBが作成されたので、「統合」タブを確認してみます。
セキュリティグループ、CloudFrontディストリビューション、WAFが作成されていることが確認できます。

作成されたリソースを確認してみる
まず、ALBにアタッチされているセキュリティグループを確認してみます。
送信元がCloudFrontのマネージドプレフィックスリストからのHTTP/TCP 80ポートになっています。


続いて、CloudFrontディストリビューションを確認します。

「オリジン」タブを見ると、オリジンとしてALBが設定されています。
デフォルトのプロトコルはHTTP/TCP 80ポートです。


最後にWAFを確認します。
「セキュリティ」タブを見ると、WAFのコア保護が有効になっていることが確認できます。

WAFを見ると、WebACLsが新規作成されています。

デフォルトで設定されているルールは以下の通りです。
- AWS-AWSManagedRulesAmazonIpReputationList
- AWS-AWSManagedRulesCommonRuleSet
- AWS-AWSManagedRulesKnownBadInputsRuleSet

まとめ
各画面を行き来せず、ALBコンソールからCloudFrontとWAFを簡単に作成し統合することができました。
すぐに検証環境を用意したいときに活用できると思います。