0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【SAS対策】Amazon CloudFront

Posted at

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: キャッシュ主体か、リアルタイム最適化か
0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?