Amazon S3 は、AWS のオブジェクトストレージサービスです。
画像、動画、バックアップ、ログ、静的サイトのファイル、アプリのアップロードファイルなど、さまざまなデータを保管する用途で使われます。
まず押さえたいポイント
どんな場面で使う?
小規模Webサービスでは、ユーザーがアップロードした画像、PDF、CSV、バックアップ、ログの退避先として候補になります。
静的サイトでは、HTML、CSS、JavaScript、画像をS3に置き、CloudFrontと組み合わせて配信する構成もよく使われます。
よくある誤解
S3は普通のサーバー上のフォルダとは違います。
オブジェクトストレージなので、ファイルシステムのように直接編集する感覚とは異なります。
また、置いたら公開される わけではなく、公開範囲、バケットポリシー、CloudFrontとの接続を正しく設計する必要があります。
実務で見るポイント
S3を使うなら、公開バケットにする必要があるか、CloudFront経由にするか、アップロード権限を誰に与えるか、ライフサイクルで古いファイルをどう扱うかを確認します。
小規模でも、個人情報や顧客ファイルを置く場合はアクセス制御とログが重要です。
小規模運用での判断
小さなWebアプリでも、画像や添付ファイルをアプリサーバー内に置き続けると、サーバー移行やバックアップで困ることがあります。
S3に分けておくと、アプリサーバーを作り直してもファイルを残しやすくなります。
ただし、公開ファイルと非公開ファイルを同じ感覚で扱わないことが大事です。公開画像、請求書、本人確認書類、バックアップでは、必要な権限や保存期間がまったく違います。