8
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

AmplifyにWAFが来たぞ!

Amplifyに念願のWAFが来ましたー!!

Amplifyといえば、簡単にフロントエンドからバックエンドまでをIaCで構築できるAWSサービスです。

その際、フロントエンドのデプロイにはCloudFront+S3が用いられるのですが、そのCloudFrontにWAFを設定することはできませんでした。

回避策として、Amplifyの前に置くCloudFrontを独自に作成し、CloudFrontにWAFを設定する必要がありました。
構成図にするとめちゃくちゃ歪な感じになります。
image.png

しかし、今回のアップデートによってこんな構成を組まなくて良くなります!
というところで設定画面を見ていきましょう!

設定画面

デプロイが開始されると…「ファイアウォール」の項目が見えました!!
image.png

選択すると、こんな画面が表示されます。
image.png


上から見ていきましょう。
まずはWAFの保護を有効化するか否かの設定です。
その下にはamplifyapp.comへのアクセスを制限するかが決められるそうです。
image.png

前者はともかく、後者は画面上だけではちょっとよくわかりませんでした。
有効にしても画面上で追加設定が出てくるとかもなく…結局何をどう制限してくれるのかがわかりませんでした。
image.png

ただ、GitHub上のやり取りを見ていると、この設定について言及されていました。曰く、
「これは、カスタムドメインに変更したユーザーが、Amplifyのオリジナルのウェブサイト(例:https://xxx.yyyy.amplifyapp.com )からのアクセスを制限したい場合のための機能だと思います。
私の場合は、この機能をオンにすることで、Googlebotがウェブサイトにアクセスして重複コンテンツとしてマークされることを防いでいます。」とのこと。
image.png

つまりどういうことかというと、Amplifyでホストしているウェブサイトに対して、素の「amplifyapp.com」ドメインからのアクセスを防ぐ機能です。

Amplifyはデプロイすると、デフォルトで「abcd1234.amplifyapp.com」のようなデフォルトドメイン名が割り当てられます。
image.png

ただ、Amplifyではカスタムドメインを独自に設定することもできます。
ここでは、「example.com」とします。
image.png

この時、「amplifyapp.comへのアクセスを制限する」を有効にしておけば、デフォルトドメインからのアクセスは制限され、カスタムドメインからのアクセスのみ可能になります。
image.png

ということで、基本的にはONにしておくことになる設定ではないかなぁと思います!


続いて、具体的な制限のかけ方についてです。
image.png

1つ注意点として、IPアドレスと国の制限は同時に2つとも有効化することはできません(2024年12月19日現在)。
どちらか1つずつだけが設定可能となっています。

まずはIPアドレスの設定です。
個人的にはかなりシンプルな画面かつ設定が簡単で、非常に好印象でした。

WAFのIP setsが使えそうな雰囲気もあるのですが、ここにどうやって設定するかはちょっとわかりませんでした。
image.png

国も似たような形で設定可能です。
国名はプルダウンの選択式(検索も可能)だったので、こちらも手軽に設定できそうです。
image.png

今回はIPアドレスを設定し、有効化してみました。

どうやらAmplify Firewallにはお金がかかるらしいです。
プレビュー中はWAFの使用料のみ、ということはGAされたらWAF+Amplify Firewallの二重課金が発生するかもしれない…?

ちょっと今後もチェックしておく必要がありそうですね。
image.png

設定が完了すると、このような画面になります。
そして、きちんとWAFログも出力されるようです!
image.png

実際にWAFログを確認していきます。

どうやらAmplify Firewallを有効化すると、自動でWeb ACLsのRuleなどが作成されるようですね。
image.png

いくつかは自動でルールが設定されていましたが、先ほど設定したIPアドレス制限や、ドメイン制限もきちんと反映されていました!

IPAllowListでは、IP Setsも自動作成されていたので、追加で制限をかけたくなった場合はそこを編集すれば良さそうです!
image.png

image.png

amplifyapp.comドメイン経由でのアクセスもきちんとブロックされていました!
image.png

まとめ

ということで、念願のAmplify Firewall機能でした!
現状ですでに必須の機能は実装されているのではないでしょうか!

re:Invent期間中にはAmplify AI Kitなんかも実装されており、非常に勢いを増しているAmplify!
これからも継続してキャッチアップしていきます!

8
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?