Amazon S3 の汎用バケットでは、オブジェクトが主要なリソースであり、オブジェクトはバケットに格納されます。Amazon S3 汎用バケットはフラットな構造であり、ファイルシステムに見られるような階層はありません。ただし、構造を分かりやすくするため、Amazon S3 コンソールでは、オブジェクトのグループ化の方法としてフォルダの概念をサポートしています。コンソールでは、これを行うために、グループ化したオブジェクトに共有名のプレフィックスを使用します。つまり、グループ化したオブジェクトに共通の文字列で始まる名前が付けられます。この共通の文字列 (共有プレフィックス) がフォルダ名です。オブジェクト名はキー名とも呼ばれます。
例えば、コンソールの汎用バケットに photos
という名前のフォルダを作成し、その中に myphoto.jpg
という名前のオブジェクトを保存できます。このオブジェクトはキー名 photos/myphoto.jpg
で保存され、photos/
がプレフィックスになります。
ここでは、さらに 2 つの例を示します。
-
汎用バケットに
logs/date1.txt
、logs/date2.txt
、logs/date3.txt
という 3 つのオブジェクトがある場合、コンソールにはlogs
という名前のフォルダが表示されます。コンソールでフォルダを開くと、date1.txt
、date2.txt
、date3.txt
という 3 つのオブジェクトが表示されます。 -
photos/2017/example.jpg
という名前のオブジェクトがある場合、コンソールには、フォルダ2017
を含むphotos
という名前のフォルダが表示されます。フォルダ2017
にはオブジェクトexample.jpg
が含まれます。
フォルダ内にフォルダを作成できますが、バケット内にバケットを作成することはできません。オブジェクトをフォルダに直接アップロードしてコピーできます。フォルダは、作成、削除、公開することができますが、名前を変更することはできません。オブジェクトはフォルダ間でコピーすることができます。
重要
Amazon S3 コンソールでフォルダを作成すると、S3 は 0 バイトのオブジェクトを作成します。このオブジェクトキーには、指定したフォルダ名と末尾のスラッシュ (/
) 文字が設定されます。例えば、Amazon S3 コンソールで、バケットに photos
という名前のフォルダを作成した場合、Amazon S3 コンソールは photos/
キーを使用して 0 バイトのオブジェクトを作成します。コンソールは、フォルダの考え方をサポートするために、このオブジェクトを作成します。
また、末尾にスラッシュ文字 (/
) を含む名前が付いている既存のオブジェクトは、Amazon S3 コンソールにフォルダとして表示されます。例えば、キー名 examplekeyname/
のオブジェクトは、Amazon S3 コンソールのフォルダとして表示され、オブジェクトとしては表示されません。それ以外の場合は、他のオブジェクトと同様に動作し、AWS Command Line Interface (AWS CLI)、AWS SDK、または REST API を使用して表示および操作できます。さらに、キー名の末尾がスラッシュ文字 (/
) のオブジェクトは、Amazon S3 コンソールを使用してアップロードすることができません。ただし、名前の末尾がスラッシュ (/
) 文字のオブジェクトは、AWS Command Line Interface (AWS CLI)、AWS SDK、または REST API を使用してアップロードできます。
さらに、Amazon S3 コンソールは、他のオブジェクトのようにフォルダオブジェクトのコンテンツとメタデータを表示することはしません。コンソールを使用して名前の末尾がスラッシュ文字 (/
) のオブジェクトをコピーすると、コピー先の場所に新しいフォルダが作成されますが、オブジェクトのデータとメタデータはコピーされません。また、オブジェクトキー名のスラッシュ (/
) には特別な処理が必要になる場合があります。詳細については、「Amazon S3 オブジェクトに命名する」を参照してください。
ディレクトリバケットにフォルダを作成するには、フォルダをアップロードします。詳細については、「ディレクトリバケットへのオブジェクトのアップロード」を参照してください。
フォルダの作成
このセクションでは、Amazon S3 コンソールを使用してフォルダを作成する方法について説明します。
重要
バケットポリシーが原因で、このバケットへのオブジェクトのアップロードを、タグ、メタデータ、またはアクセスコントロールリスト (ACL) の被付与者なしで行うことができない場合は、次の手順を使用してフォルダを作成することはできません。代わりに、空のフォルダをアップロードし、以下の設定をアップロード設定で指定します。
フォルダを作成するには
AWS Management Console にサインインし、Amazon S3 コンソール https://console.aws.amazon.com/s3/
を開きます。 -
左のナビゲーションペインで、[汎用バケット] を選択します。
-
バケットリストで、フォルダの作成先となるバケットの名前を選択します。
-
[オブジェクト] タブから、[フォルダの作成] を選択します。
-
フォルダの名前 (例:
favorite-pics
) を入力します。注記
フォルダ名には特定の制限とガイドラインが適用され、オブジェクトのオブジェクトキー名の一部と見なされて、1,024 バイトに制限されます。詳細については、「Amazon S3 オブジェクトに命名する」を参照してください。
-
(オプション) バケットポリシーで特定の暗号化キーでオブジェクトを暗号化する必要がある場合は、[サーバー側の暗号化] で、[暗号化キーを指定する] を選択し、フォルダの作成時に同じ暗号化キーを指定する必要があります。指定しない場合、フォルダの作成は失敗します。
-
Create folder (フォルダの作成) を選択します。
フォルダの公開
パブリックフォルダまたはバケットが特別に必要な場合を除き、Amazon S3 フォルダまたはバケットへのすべてのパブリックアクセスをブロックすることをお勧めします。フォルダを公開すると、インターネット上の誰もがフォルダ内でグループ化されたすべてのオブジェクトを表示できます。
Amazon S3 コンソールでは、フォルダをパブリックにすることができます。データへのアクセスをプレフィックスで制限するバケットポリシーを作成して、フォルダを公開することもできます。詳細については、「Amazon S3 用 Identity and Access Management」を参照してください。
警告
Amazon S3 コンソールでフォルダを公開した後は、非公開に戻すことはできません。代わりに、非公開にするパブリックフォルダ内の各オブジェクトのアクセス許可の設定で、オブジェクトへのパブリックアクセスを禁止する必要があります。詳細については、「ACL の設定」を参照してください。
フォルダサイズの計算
このセクションでは、Amazon S3 コンソールを使用してフォルダのサイズを計算する方法について説明します。
フォルダのサイズを計算するには
AWS Management Console にサインインし、Amazon S3 コンソール https://console.aws.amazon.com/s3/
を開きます。 -
左のナビゲーションペインで、[汎用バケット] を選択します。
-
[汎用バケット] リストで、フォルダが保存されているバケットの名前を選択します。
-
[オブジェクト] リストで、フォルダの名前の横にあるチェックボックスをオンにします。
-
[Actions] (アクション) を選択し、[Calculate total size] (合計サイズを計算する) を選択します。
注記
ページから移動すると、フォルダ情報 (合計サイズを含む) は利用できなくなります。合計サイズを再度表示するには、計算をやり直す必要があります。
重要
バケット内の指定されたオブジェクトまたはフォルダで [Calculate total size] (合計サイズを計算する) アクションを使用すると、Amazon S3 はオブジェクトの総数と合計ストレージサイズを計算します。ただし、不完全または進行中のマルチパートのアップロード、および以前のバージョンまたは最新ではないバージョンは、オブジェクトの総数または合計サイズには含まれません。このアクションは、バケットに保存されている各オブジェクトの現在のバージョンまたは最新バージョンのオブジェクトの総数と合計サイズのみを計算します。
例えば、バケット内に 2 つのバージョンのオブジェクトがある場合、Amazon S3 のストレージ計算ツールはそれらを 1 つのオブジェクトとしてしかカウントしません。そのため、Amazon S3 コンソールで計算されるオブジェクトの総数は、S3 ストレージレンズに表示される [オブジェクト数] メトリクスや Amazon CloudWatch メトリクス、NumberOfObjects
によって報告される数と異なる場合があります。同様に、ストレージの合計サイズは、S3 Storage Lens に表示される [Total Storage] (ストレージの合計) メトリクスや CloudWatch に表示される BucketSizeBytes
メトリクスと異なる場合があります。
フォルダの削除
このセクションでは、Amazon S3 コンソールを使用して S3 バケットからフォルダを削除する方法について説明します。
Amazon S3 の機能と料金の詳細については、Amazon S3
S3 バケットからフォルダを削除するには
-
AWS Management Console にサインインし、Amazon S3 コンソール https://console.aws.amazon.com/s3/
を開きます。 -
左のナビゲーションペインで、[汎用バケット] を選択します。
-
[汎用バケット] リストで、フォルダを削除するバケットの名前を選択します。
-
[オブジェクト] リストで、削除するフォルダとオブジェクトの横にあるチェックボックスをオンにします。
-
[削除] を選択します。
-
[オブジェクトの削除] ページで、削除するために選択したフォルダとオブジェクトの名前が、[指定されたオブジェクト] の下にリストされていることを確認します。
-
[オブジェクトの削除] ボックスに「
delete
」と入力し、[オブジェクトの削除] をクリックします。
警告
このアクションは、指定されたすべてのオブジェクトを削除します。フォルダを削除する場合は、削除アクションが完了するのを待ってから、フォルダに新しいオブジェクトを追加します。そうしなければ、新しいオブジェクトも削除される可能性があります。