APIサーバーにCloudFrontを導入してセキュリティを向上する
テテマーチ株式会社 / finger-ease
メンバー / フルスタックエンジニア / エンジニア組織: 10名以下
利用機能 | ツールの利用規模 | ツールの利用開始時期 | 事業形態 |
---|---|---|---|
ロギング, リアルタイムメトリクス | 10名以下 | 2024年11月 | B to B B to C |
利用機能 | ロギング, リアルタイムメトリクス |
---|---|
ツールの利用規模 | 10名以下 |
ツールの利用開始時期 | 2024年11月 |
事業形態 | B to B B to C |
アーキテクチャ

導入の背景・解決したかった問題
導入背景
背景・当時の状況
エンドユーザーからのAPIリクエストが直接オリジンサーバー(ALB)に刺さる構成になっており、セキュリティ面に不安がありました。
負荷影響を除く実害は確認されていなかったものの、定期的に無差別攻撃と思われるまとまったリクエストが発生していました。
どのような状態を目指していたか
通信経路にリバースプロキシとしてCloudFrontを配置し、さらにその前段にWAFを置くことで不適切なリクエストをオリジンサーバーに到達させることなく、セキュリティ向上と負荷の軽減を達成したいと考えていました。
また、副次効果としてエッジロケーションからのアクセスによる通信の高速化や、無料枠によるネットワーク転送料削減などのメリットを期待していました。
導入の成果
Good
WAFと併せて導入し、CloudFrontを経由しないALBへの直アクセスも不正なリクエストとして扱うように設定することで、不適切なリクエストをアプリケーション層で弾くことができるようになり、セキュリティの向上とAPIサーバーの負荷軽減を実現することができました。
More
パフォーマンス改善については導入前後のベンチマークで有意な差は見られず、現状のサービス規模(Data transfer out: 1~2G/月)ではコスト面に対する影響もほとんど見られませんでした。
導入時の苦労・悩み
既に本番稼働中のAPIサーバーへの通信経路をダウンタイムなしで変更するために、作業手順に問題がないかを入念に確認する必要がありました。
具体的には、Blue/Greenデプロイを採用しているので、現在有効なデプロイとして稼働している方にALBのHTTPリスナーのターゲットグループを合わせてTerraformをapplyする必要があるなど、注意すべき点が存在しました。
導入に向けた社内への説明
上長・チームへの説明
現状の利用範囲ではCloudFrontにかかるコストは発生しないであろうことと、セキュリティ面を強化したいという理由から、導入はスムーズに受け入れられました。
なお、リアルタイムメトリクスについては有効化することで料金が発生しますが、こちらも現状月0.1ドル以下に抑えられています。
活用方法
よく使う機能
- リアルタイムメトリクス
- 週次で行なっているSRE活動の中で、リクエスト数などに急激なスパイクや普段と違う動きがなかったかを確認しています。
ツールの良い点
- キャッシュを利用しない場合でも導入することによってメリットがある
ツールの課題点
- 特になし
今後の展望
メディアを扱うような特定のエンドポイントについて、キャッシュを適切に利用することでパフォーマンスの改善が期待できるため、キャッシュ運用戦略も検討していきたいと考えています。
テテマーチ株式会社 / finger-ease
メンバー / フルスタックエンジニア / エンジニア組織: 10名以下
テテマーチ株式会社 / finger-ease
メンバー / フルスタックエンジニア / エンジニア組織: 10名以下