オブジェクトをアップロードするときに、そのオブジェクトのストレージクラスを指定できます。そうでない場合は、Amazon S3 は汎用バケットのオブジェクトにデフォルトの Amazon S3 Standard ストレージクラスを使用します。Amazon S3 汎用バケットに既に保存されているオブジェクトのストレージクラスを、Amazon S3 コンソール、AWS SDK、AWS Command Line Interface (AWS CLI) を使用して他のストレージクラスに変更することもできます。これらのアプローチはすべて、Amazon S3 API オペレーションを使用して Amazon S3 にリクエストを送信します。
注記
ディレクトリバケットに保存されているオブジェクトのストレージクラスを変更することはできません。
バケットに S3 ライフサイクル設定を追加すると、Amazon S3 がオブジェクトのストレージクラスを自動的に変更します。詳細については、「オブジェクトのライフサイクルの管理」を参照してください。
S3 レプリケーションを設定する場合、レプリケートされたオブジェクトのストレージクラスを別のストレージクラスに設定できます。ただし、S3 Glacier Flexible Retrieval または S3 Glacier Deep Archive ストレージクラスに保存されているオブジェクトをレプリケートすることはできません。詳細については、「レプリケーション設定ファイル要素」を参照してください。
ストレージクラスをプログラムで設定する場合、ストレージクラスの値を指定します。以下は、ストレージクラスのコンソール名と対応する API 値のリストです。
低冗長ストレージ –
REDUCED_REDUNDANCY
S3 Express One Zone –
EXPRESS_ONEZONE
S3 Glacier Deep Archive –
DEEP_ARCHIVE
S3 Glacier Flexible Retrieval –
GLACIER
S3 Glacier Instant Retrieval –
GLACIER_IR
S3 Intelligent-Tiering –
INTELLIGENT_TIERING
S3 One Zone-IA –
ONEZONE_IA
S3 Standard –
STANDARD
S3 Standard-IA –
STANDARD_IA
新しいオブジェクトのストレージクラスを設定
オブジェクトをアップロードするときにストレージクラスを設定するには、次の方法を使用できます。
コンソールで新しいオブジェクトをアップロードするときにストレージクラスを設定するには
AWS Management Console にサインインし、Amazon S3 コンソール (https://console.aws.amazon.com/s3/
) を開きます。 左のナビゲーションペインで、[汎用バケット] を選択します。
バケットリストで、フォルダやファイルのアップロード先のバケットの名前を選択します。
[Upload (アップロード)] を選択します。
[アップロード] ウィンドウで、[プロパティ] を選択します。
[ストレージクラス] で、アップロードするファイルのストレージクラスを選択します。
(オプション) アップロードするファイルの追加のプロパティを設定します。詳細については、「オブジェクトのアップロード」を参照してください。
[Upload] (アップロード) ウィンドウで、次のいずれかの操作を行います。
ファイルとフォルダを [アップロード] ウィンドウにドラッグします。
[ファイルの追加] または [フォルダの追加] を選択し、アップロードするファイルまたはフォルダを選択して [開く] を選択します。
ページの最下部で [アップロード] をクリックします。
PutObject
、POST Object
オブジェクト、および CreateMultipartUpload
API オペレーションを使用してオブジェクトを作成するときに、オブジェクトのストレージクラスを指定し、x-amz-storage-class
リクエストヘッダーを追加できます。このヘッダーを追加しない場合は、Amazon S3 では、デフォルトのストレージクラスである S3 Standard (STANDARD
) を使用します。
このリクエスト例では、PutObject
コマンドを使用して新しいオブジェクトのストレージクラスを S3 Intelligent-Tiering に設定します。
PUT /my-image.jpg HTTP/1.1 Host:
.s3.
amzn-s3-demo-bucket1
Region
.amazonaws.com Date: Wed, 12 Oct 2009 17:50:00 GMT Authorization: authorization string Content-Type: image/jpeg Content-Length: 11434 Expect: 100-continue x-amz-storage-class: INTELLIGENT_TIERING
この例では、put-object
コマンドを使用して、
ストレージクラスの GLACIER
my_images.tar.bz2
を
にアップロードします。amzn-s3-demo-bucket1
aws s3api put-object --bucket
--key
amzn-s3-demo-bucket1
dir-1/my_images.tar.bz2
--storage-classGLACIER
--bodymy_images.tar.bz2
オブジェクトサイズが 5 GB を超える場合は、次のコマンドを使用してストレージクラスを設定します。
aws s3 cp
large_test_file
s3://
--storage-classamzn-s3-demo-bucket1
GLACIER
既存のオブジェクトのストレージクラスの変更
オブジェクトをアップロードするときにストレージクラスを設定するには、次の方法を使用します。
オブジェクトのサイズが 5 GB 未満の場合は、Amazon S3 コンソールを使用してオブジェクトのストレージクラスを変更できます。それ以上大きい場合は、S3 Lifecycle の設定を追加すると、オブジェクトのストレージクラスを変更できます。
コンソールでオブジェクトのストレージクラスを変更するには
AWS Management Console にサインインし、Amazon S3 コンソール https://console.aws.amazon.com/s3/
を開きます。 -
左のナビゲーションペインで、[汎用バケット] を選択します。
バケットリストで、変更するオブジェクトが含まれるバケットの名前を選択します。
-
変更するオブジェクトの名前の左にあるチェックボックスをオンにします。
-
[アクション] メニューに表示されるオプションのリストから [ストレージクラスの編集] を選択します。
-
オブジェクトで使用できるストレージクラスから選択します。
-
[追加のコピー設定] で、[ソース設定をコピー] するか、[設定を指定しない] か、[設定を指定] するかを選択します。[ソース設定をコピー] がデフォルトのオプションです。ソース設定の属性なしでオブジェクトのみをコピーする場合は、[設定を指定しない] を選択します。ストレージクラス、ACL、オブジェクトタグ、メタデータ、サーバー側の暗号化、その他のチェックサムの設定を指定するには、[設定を指定] を選択します。
-
右下の [変更の保存] を選択します。Amazon S3 は変更を保存します。
既存のオブジェクトのストレージクラスを変更するには、次の方法を使用します。
このリクエスト例では、PutObject
コマンドを使用して既存のオブジェクトのストレージクラスを S3 Intelligent-Tiering に設定します。
PUT /my-image.jpg HTTP/1.1 Host:
.s3.
amzn-s3-demo-bucket1
Region
.amazonaws.com Date: Wed, 12 Oct 2009 17:50:00 GMT Authorization: authorization string Content-Type: image/jpeg Content-Length: 11434 Expect: 100-continue x-amz-storage-class: INTELLIGENT_TIERING
この例では、cp
コマンドを使用して、既存のオブジェクトのストレージクラスを現在のストレージクラスから
ストレージクラスに変更します。DEEP_ARCHIVE
aws s3 cp
object_S3_URI
object_S3_URI
--storage-classDEEP_ARCHIVE
アクセスポリシーのアクセス許可を特定のストレージクラスに制限する
Amazon S3 オペレーションのアクセスポリシーアクセス許可を付与する場合、s3:x-amz-storage-class
条件キーを使用して、アップロードされたオブジェクトを保存するときに使用するストレージクラスを制限できます。例えば、s3:PutObject
アクセス許可を付与すると、オブジェクトのアップロードを特定のストレージクラスに制限できます。ポリシーの例については例: オブジェクトのアップロードを特定のストレージクラスのオブジェクトに制限するを参照してください。
ポリシーでの条件の使用方法および Amazon S3 条件キーの完全なリストについては、以下のトピックを参照してください。
-
「サービス認可リファレンス」の「Actions, resources, and condition keys for Amazon S3」を参照してください。
S3 リソースタイプ別の S3 API オペレーションへのアクセス許可の詳細については、「Amazon S3 API オペレーションに必要なアクセス許可」を参照してください。