Amazon CloudFrontとは
- AWSのCDN(Content Delivery Network)サービス
- 世界中のエッジロケーションを活用して、コンテンツをユーザーに近い場所から低遅延で配信
- 動的・静的コンテンツ(HTML, CSS, JS, APIレスポンス, 動画, 音声など)両方対応
- セキュリティ・キャッシュ制御・認証機能が充実している
1. OAI (Origin Access Identity)
- CloudFront → S3連携の旧方式
- 仮想IAMユーザーを発行し、バケットポリシーで「このOAIからのリクエストのみ許可」と設定
- S3を「直接インターネット公開」せず、CloudFront経由のみアクセスさせることができる
- ただし古い方式で、新規構築ではOAC推奨
2. OAC (Origin Access Control)
- OAIの進化版(2022年以降の推奨方式)
- SigV4署名を使ったより強力なセキュリティモデル
- S3以外のオリジン(ALB, API Gatewayなど)にも対応
- CloudFrontの「これからの標準」
3. Geo Restriction(ジオ制限)
-
特定の地域/国からのアクセスを許可・拒否できる機能
- 例: 日本国内からのみ動画視聴を許可する
- 米国からのアクセスを制限する
-
著作権・配信ライセンス制御に使われる
4. Signed URL / Signed Cookies
CloudFrontで「特定のユーザーだけにコンテンツを配信」する仕組み
-
Signed URL
- 個別ファイル(オブジェクト)に対してアクセス制御したいときに利用
- 例: 動画ファイル
movie.mp4
を「有効期限付きリンク」で配布
-
Signed Cookies
- 複数のファイルへのアクセスをまとめて制御したいときに利用
- 例: 動画ストリーミングサイトで、ログインしたユーザーだけが複数の動画を視聴可能にする
CloudFrontとGlobal Acceleratorの違い
両方とも「グローバルに高速配信」するサービスですが目的が異なります。
サービス | 主な役割 | 利用例 |
---|---|---|
CloudFront | 静的・動的コンテンツをキャッシュして低遅延で配信 | Webサイト配信、動画配信 |
Global Accelerator | TCP/UDPベースのアプリケーション全体を最適ルーティング | ゲームサーバ、金融アプリ、API高速化 |
- CloudFront = CDN(コンテンツ配信)
- Global Accelerator = Anycastで最寄りエッジにルーティング(低遅延接続)
CloudFrontはキャッシュを効かせるのが得意、Global Acceleratorはリアルタイム性(キャッシュできない通信の最適化)が得意、という住み分け
まとめ
- OAI: S3専用の旧方式、CloudFront→S3アクセス制御
- OAC: 新方式、SigV4署名でS3以外も対応、今後の標準
- Geo Restriction: 国ごとにアクセス制御
- Signed URL / Signed Cookies: 有効期限付き・特定ユーザー限定配信
- CloudFront vs Global Accelerator: キャッシュ主体か、リアルタイム最適化か