はじめに
Webサービスは、用途に応じてダウンタイムを可能な限り短くし、可能な限り持続的なサービスを提供する必要があります。また、セキュリティの観点では、Webアプリケーションに対する攻撃による情報漏洩などのリスクを低減させる必要があります。
AWSでは、可用性を向上させるようなサービス(ALB)、Webアプリケーションを保護するようなサービス(AWS WAF)を展開しています。
本記事では、それらのサービス概要の振り返りと、最新アップデートを紹介します。
ALBとAWS WAFの概要
WebサービスをAmazon ECSで稼働させる場合、以下のような構成で可用性やセキュリティを担保することが可能です。
それぞれのコンポーネントの役割は以下の通りです。
ALB
EC2、ECSといったAWSサービスにアプリケーションをデプロイしてWebサービスを提供する場合、一般的にはALBを組み合わせた構成にすることが多いです。
ALBにより、リクエストをアプリケーションに負荷分散させたり、正常なホストにのみリクエストをルーティングするといった制御が可能です。
AWS WAF
Webアプリケーションを保護するために以下のような不正な通信の検知・遮断が可能です。
- クロスサイトスクリプティング(XSS)やSQLインジェクションなどの一般的な攻撃
- 特定のIPアドレスからの攻撃
- 同一の接続元からの過剰なアクセス
AWS WAFでは、ALBの他にもCDNであるAmazon CloudFrontや、コンテナホスティングサービスのAWS App Runnerなど、さまざまなサービスと連携し、保護できます。