【Amazon S3】S3のバケットの作成方法

今回はS3のバケット作成の紹介です。
S3とは?
S3は、Simple Storage Serviceの略称です。S3は、クラウド上でデータを安全に保存、保管、アクセスするためのソリューションを提供します。
S3は非常にスケーラブルで信頼性が高く、高い可用性を持ち、ユーザーがインターネットを介してデータにアクセスすることができます。
S3の用途

S3の用途の紹介です
- 静的なウェブサイトのホスティング
- バックアップおよびアーカイブ
- データの分析
- アプリケーションのデータストレージ
- データの暗号化
- アクセス制御
- バージョニング
スポンサードサーチ
S3のバケット作成手順
- AWS リージョンの選択
- バケットたいぷの選択
- バケット名を設定
- オブジェクト所有者の設定(ACLの無効 or 有効)
- バケットのブロックパブリックアクセス設定
- バケットのバージョニングの設定(無効 or 有効)
- タグ – オプションの設定(キーと値)
- デフォルトの暗号化
- 暗号化タイプ
- バケットキー
- 詳細設定
- オブジェクトロック(無効 or 有効)
AWSコンソールからS3からを起動する
まずはAWSコンソールからS3から検索します。
S3が表示されたら押下しましょう。

スポンサードサーチ
S3のバケットを作成
S3を立ち上げたら「バケットを作成」を押下します。

一般的な設定
一般的な設定を行います。
- リージョン
- バケットタイプ
- バケット名

スポンサードサーチ
AWS リージョン
バケットを作成するAWSリージョンを選択します。
ユーザーに最も近いリージョンを選択します。
「アジアパシフィック(東京)ap-northeast-1」を選択してください。
バケットタイプ
「汎用」または「ディレクトリ – 新規」を選択します。

汎用
頻繁にアクセスするデータや、高い耐久性と可用性が求められるデータに適しています。
デフォルトのS3バケットタイプであり、通常のS3標準ストレージクラスを使用します。
なので基本設定はこちらで大丈夫です。
ただし、料金はディレクトリより高めですが、データに素早くアクセスしたい場合や、重要なデータを保存する場合におすすめします。
ディレクトリ
ディレクトリはあまり頻繁にはアクセスされないが、それでも耐久性が必要なデータに適しています。
一つのアベイラビリティゾーンにのみ保存されるため、通常のS3よりもコストを抑えられますが、ゾーン障害が発生した場合にはデータが失われるリスクがあります。
バックアップやログファイルなど、比較的重要度が低く、頻繁にアクセスしないデータ向けにおすすめです。
バケット名
バケット名を決めて入力します。
ユニークかつ、何のバケットがわかるようにしておきましょう。
オブジェクト所有者の設定
「オブジェクト所有者の設定」とは、他の AWS アカウントからこのバケットに書き込まれたオブジェクトの所有権と、アクセスコントロールリスト (ACL) の使用を管理します。オブジェクトの所有権は、オブジェクトへのアクセスを指定できるユーザーを決定します。
- ACLの無効(推奨)
- ACLの有効

ACLの無効(推奨)
「ACLの無効」についてです。
- ACLが無効になっている場合、S3バケットのアクセス制御はバケットポリシーによって管理されます。
- バケットポリシーは、バケット全体または特定のオブジェクトに対するアクセス権を定義するJSON形式のドキュメントです。
- バケットポリシーは、S3バケットに対する特定のアクセス権を特定のユーザーやAWSアカウントに与えることができます。
ACLの有効
「ACLの有効」についてです。
- ACLが有効になっている場合、バケット内の各オブジェクトには個別のアクセスコントロールリスト(ACL)が適用されます。
- オブジェクトのACLは、そのオブジェクトに対するアクセスを特定のAWSアカウントやユーザーに制御するために使用されます。
- オブジェクトのACLは、オブジェクトごとに異なるアクセス許可を設定する必要がある場合に使用されます。

「ACLの無効」が推奨されています。
バケットのブロックパブリックアクセス設定
「ブロックパブリックアクセス設定」とは、バケットとその中のオブジェクトに対するパブリックアクセスをブロックするための設定です。これにより、意図せずにパブリックに公開されることを防止し、セキュリティを強化できます。

デフォルトのチェックのままにしておきましょう

バケットのバージョニングの設定(無効 or 有効)
「バケットのバージョニング」とは、S3オブジェクトのバージョン管理機能を有効にすることです。この機能を有効にすると、同じキー(ファイル名)に対して複数のバージョンが保存され、削除されたオブジェクトも元に戻すことができます。
- 無効にする
- 有効にする

特にこだわりがなければ、「無効にする」にチェックを入れておきます。

タグ – オプションの設定(キーと値)
「タグ – オプション」では、ユーザーが定義できるキーバリュー形式のメタデータを付与することができます。
- リソースをより詳細に管理
- ストレージコストを追跡
- バケットを整理

ここも設定なしでも問題ありません

デフォルトの暗号化
「デフォルトの暗号化」とはS3バケットでオブジェクトの暗号化を自動的に有効にする機能です。
これにより、バケット内のすべての新しいオブジェクトが自動的に暗号化されます。
- 暗号化タイプ
- バケットキー

暗号化タイプ
- Amazon S3 マネージドキーを使用したサーバー側の暗号化 (SSE-S3)AWS Key Management Service
- Service キーを使用したサーバー側の暗号化 (SSE-KMS)AWS Key Management Service キー
- 使用したデュアルレイヤーサーバー側の暗号化 (DSSE-KMS)

それぞれについて補足します
SSE-S3 (Server-Side Encryption with S3 Managed Keys)
- SSE-S3は、Amazon S3が提供するサーバー側の暗号化の一種です。S3が管理する暗号鍵を使用してオブジェクトを暗号化します。
- ユーザーは特別な操作をせずに、S3によって自動的に暗号化が行われます。
- 暗号鍵の管理や回転などの面倒な作業をユーザーが行う必要がなく、簡単にセキュリティを強化できます。
SSE-KMS (Server-Side Encryption with AWS Key Management Service)
- SSE-KMSは、AWS Key Management Service(KMS)を使用してサーバー側の暗号化を行う方法です。
- SSE-KMSでは、ユーザーが独自の暗号鍵をAWS KMSに作成し、その鍵を使用してオブジェクトを暗号化します。
- ユーザーは鍵の管理やアクセス制御を細かく設定でき、より高度なセキュリティのニーズに対応できます。
DSSE-KMS (Dual Server-Side Encryption with AWS Key Management Service)
- DSSE-KMSは、2つの異なる暗号化レイヤーを使用してオブジェクトを保護する暗号化方法です。
- まず、SSE-KMSを使用してオブジェクトを暗号化し、その暗号化されたオブジェクトをさらに別の暗号鍵で暗号化します。
- この方式により、2つの異なるレベルの暗号化が適用され、より高いセキュリティレベルが実現されます。
AWS Key Management Service (KMS)
- AWS Key Management Service(KMS)は、ユーザーが暗号鍵を簡単に作成、管理、使用できるマネージドサービスです。
- KMSは、暗号鍵の作成、回転、削除、アクセス制御などのタスクを提供し、ユーザーがセキュリティを強化するための強力なツールとなります。
- また、AWSのさまざまなサービスと統合されており、暗号化されたデータを保護するための鍵管理の中心的な役割を果たします。
バケットキー
- SSE-KMSにS3バケットキーを使用すると、AWS KMSへの呼び出しを減らすことで暗号化コストを削減できます。
- DSSE-KMSではS3バケットキーはサポートされていません。
詳細設定
オブジェクトロックは、S3においてオブジェクトの削除や上書きを防止する機能です。
特定のオブジェクトを保護し、不正な削除や変更からデータを守るために使用されます。
- 無効
- 有効
オブジェクトロックを有効にすると、オブジェクトを書き込み禁止(Write-Once)で読み取り可能(Read-Many)にすることができます。
オブジェクトが一度書き込まれたら、その後は削除や上書きができなくなります。

特に指定がなければデフォルトの「無効にする」を選択しておきましょう。

全ての設定が終われば「バケットを作成」を押下して終了です。
