バケット操作
IBM Cloud® Object Storage の最新機能は、RESTful API を介して便利に利用できます。 ここでは、バケット (オブジェクトが保管されている場所) と対話するために使用される操作およびメソッドについて説明します。
許可とアクセス権限について詳しくは、 バケットの許可 を参照してください。
アクセス/秘密鍵 (HMAC) 認証に関する注記
HMAC 資格情報を使用して IBM Cloud® Object Storage のインスタンスに対して認証を行う場合は、 HMAC 署名の構成 時に表 1 に示されている情報が必要です。
キー | 値 | 例 |
---|---|---|
{access_key} | サービス・クレデンシャルに割り当てられたアクセス・キー | cf4965cebe074720a4929759f57e1214 |
{date} | 要求のフォーマット設定された日付 (yyyymmdd ) |
20180613 |
{region} | エンドポイントのロケーション・コード | us-standard |
{signature} | 秘密鍵、ロケーション、および日付を使用して作成されたハッシュ | ffe2b6e18f9dcc41f593f4dbb39882a6bb4d26a73a04326e62a8d344e07c1a3e |
{timestamp} | 要求のフォーマット設定された日時 | 20180614T001804Z |
バケットのリスト
エンドポイント・ルートに送られた GET
リクエストは、指定されたサービス・インスタンスに関連付けられているバケットのリストを返す。 エンドポイントについて詳しくは、エンドポイントおよびストレージ・ロケーションを参照してください。
Satellite 環境では、すべての操作がサポートされているわけではありません。 詳しくは、 サポートされる Satellite API を参照してください。
ヘッダー | タイプ | 必須かどうか | 説明 |
---|---|---|---|
ibm-service-instance-id |
ストリング | ある | このサービス・インスタンス内の作成済みバケットをリストします。 |
照会パラメーター | 値 | 必須かどうか | 説明 |
---|---|---|---|
extended |
なし | いいえ | LocationConstraint と CreationTemplateId のメタデータを提供する。 |
構文
GET https://{endpoint}/
要求の例
GET / HTTP/1.1
Authorization: Bearer {token}
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
ibm-service-instance-id: {ibm-service-instance-id}
要求の例
GET / HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
応答の例
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ListAllMyBucketsResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<Owner>
<ID>{account-id}</ID>
<DisplayName>{account-id}</DisplayName>
</Owner>
<Buckets>
<Bucket>
<Name>bucket-27200-lwx4cfvcue</Name>
<CreationDate>2016-08-18T14:21:36.593Z</CreationDate>
</Bucket>
<Bucket>
<Name>bucket-27590-drqmydpfdv</Name>
<CreationDate>2016-08-18T14:22:32.366Z</CreationDate>
</Bucket>
<Bucket>
<Name>bucket-27852-290jtb0n2y</Name>
<CreationDate>2016-08-18T14:23:03.141Z</CreationDate>
</Bucket>
<Bucket>
<Name>bucket-28731-k0o1gde2rm</Name>
<CreationDate>2016-08-18T14:25:09.599Z</CreationDate>
</Bucket>
</Buckets>
</ListAllMyBucketsResult>
拡張リストの取得
構文
GET https://{endpoint}/?extended
要求の例
GET /?extended HTTP/1.1
Authorization: Bearer {token}
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
ibm-service-instance-id: {ibm-service-instance-id}
要求の例
GET /?extended HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
応答の例
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ListAllMyBucketsResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<Owner>
<ID>{account-id}</ID>
<DisplayName>{account-id}</DisplayName>
</Owner>
<IsTruncated>false</IsTruncated>
<MaxKeys>1000</MaxKeys>
<Prefix/>
<Marker/>
<Buckets>
<Bucket>
<Name>bucket-27200-lwx4cfvcue</Name>
<CreationDate>2016-08-18T14:21:36.593Z</CreationDate>
<LocationConstraint>us-south-standard</LocationConstraint>
</Bucket>
<Bucket>
<Name>bucket-27590-drqmydpfdv</Name>
<CreationDate>2016-08-18T14:22:32.366Z</CreationDate>
<LocationConstraint>us-standard</LocationConstraint>
</Bucket>
<Bucket>
<Name>bucket-27852-290jtb0n2y</Name>
<CreationDate>2016-08-18T14:23:03.141Z</CreationDate>
<LocationConstraint>eu-standard</LocationConstraint>
</Bucket>
<Bucket>
<Name>bucket-28731-k0o1gde2rm</Name>
<CreationDate>2016-08-18T14:25:09.599Z</CreationDate>
<LocationConstraint>us-cold</LocationConstraint>
</Bucket>
</Buckets>
</ListAllMyBucketsResult>
バケットの作成
エンドポイント・ルートに送信され、その後にストリングが続く PUT
要求は、バケットを作成します。 エンドポイントについて詳しくは、エンドポイントおよびストレージ・ロケーションを参照してください。 バケット名はグローバルに一意であり、DNSに準拠していなければならない。 3 から
63 文字の長さの名前は、小文字、数字、ドット (ピリオド)、およびダッシュ (ハイフン) で構成する必要があります。 バケット名の先頭と末尾は、小文字か数値でなければなりません。 バケット名に連続したドットやダッシュを含めることはできません。 IPアドレスに似たバケット名は許可されない。 この操作では、操作固有の照会パラメーターは使用されません。
パブリック・クラウド内のすべてのバケットが 1 つのグローバル名前空間を共有するため、バケット名は固有である必要があります。 この要件により、サービスインスタンスやアカウント情報を提供することなく、バケットにアクセスできるようになる。 また、cosv1-
および account-
はシステムで予約済みであるため、これらの接頭部で始まる名前のバケットを作成することはできません。
Satellite 環境では、すべての操作がサポートされているわけではありません。 詳しくは、 サポートされる Satellite API を参照してください。
ヘッダー | タイプ | 必須かどうか | 説明 |
---|---|---|---|
ibm-service-instance-id |
ストリング | ある | このヘッダーは、バケットが作成され、データ使用量が課金されるサービスインスタンスを参照する。 |
x-amz-bucket-object-lock-enabled |
ブール値 | いいえ | 新規バケットでオブジェクト・ロックを有効にするかどうかを指定します。 このヘッダーにより、バージョン管理が自動的に有効になります。 |
新規バケットにオブジェクト・ロックを設定する場合は、 x-amz-bucket-object-lock-enabled
ヘッダーにタイプミスがないことを確認してください。 ヘッダーまたは値のスペルが誤っている場合、バケットは作成されますが、オブジェクト・ロックおよびバージョン管理は有効に なりません。
個人を特定できる情報(PII):バケツを作成したりオブジェクトを追加したりする際には、バケツやオブジェクトの名前に、名前、場所、その他の手段によってユーザ(自然人)を特定できるような情報を使わないようにしてください。
構文
PUT https://{endpoint}/{bucket-name} # path style
PUT https://{bucket-name}.{endpoint} # virtual host style
要求の例
以下の例では、「images」という名前のバケットを作成します。
PUT /images HTTP/1.1
Authorization: Bearer {token}
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
ibm-service-instance-id: {ibm-service-instance-id}
要求の例
PUT /images HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
応答の例
HTTP/1.1 200 OK
Date: Wed, 24 Aug 2016 17:45:25 GMT
X-Clv-Request-Id: dca204eb-72b5-4e2a-a142-808d2a5c2a87
Accept-Ranges: bytes
Server: Cleversafe/3.9.0.115
X-Clv-S3-Version: 2.5
x-amz-request-id: dca204eb-72b5-4e2a-a142-808d2a5c2a87
Content-Length: 0
異なるストレージ・クラスを使用するバケットの作成
LocationConstraint
異なるストレージクラスを持つバケツを作るには、 PUT
リクエストの本文で、 {provisioning code}
のバケツ構成を指定する XML ブロックをバケツエンドポイントに送ります。 エンドポイントについて詳しくは、エンドポイントおよびストレージ・ロケーションを参照してください。
標準バケットの 命名ルール が適用されます。 この操作では、操作固有の照会パラメーターは使用されません。
Satellite 環境では、すべての操作がサポートされているわけではありません。 詳しくは、 サポートされる Satellite API を参照してください。
| | ヘッダー | タイプ | 説明 | |--------------------------|--------|--------------------------------------------------------------------------------------------------------------------- | ibm-service-instance-id
| ストリング | このヘッダーは、バケットが作成され、データ使用量が課金されるサービスインスタンスを参照する。
|
構文
PUT https://{endpoint}/{bucket-name} # path style
PUT https://{bucket-name}.{endpoint} # virtual host style
要求の本体には、以下のスキーマの XML ブロックが含まれている必要があります。
エレメント | タイプ | 子 | 上位 | 制約 |
---|---|---|---|---|
CreateBucketConfiguration |
コンテナー | LocationConstraint |
|
|
LocationConstraint |
ストリング |
|
CreateBucketConfiguration |
有効なロケーション・コード |
<CreateBucketConfiguration>
<LocationConstraint>us-vault</LocationConstraint>
</CreateBucketConfiguration>
LocationConstraint
の有効なプロビジョニング・コードのリストについては、ストレージ・クラスのガイドを参照してください。
要求の例
以下の例では、「vault-images」というバケットを作成します。
PUT /vault-images HTTP/1.1
Authorization: Bearer {token}
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
ibm-service-instance-id: {ibm-service-instance-id}
Content-Length: 110
要求の例
PUT /vault-images HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
<CreateBucketConfiguration>
<LocationConstraint>us-vault</LocationConstraint>
</CreateBucketConfiguration>
応答の例
HTTP/1.1 200 OK
Date: Fri, 17 Mar 2017 17:52:17 GMT
X-Clv-Request-Id: b6483b2c-24ae-488a-884c-db1a93b9a9a6
Accept-Ranges: bytes
Server: Cleversafe/3.9.0.115
X-Clv-S3-Version: 2.5
Content-Length: 0
Key Protect または Hyper Protect Crypto Services 管理された暗号鍵(SSE-KP)でバケットを作成する
暗号鍵が Key Protect または Hyper Protect Crypto Servicesによって管理されるバケットを作成するには、アクティブな Key Protect または Hyper Protect Crypto Services サービス・インスタンスにアクセスできる必要があります。 この操作では、操作固有の照会パラメーターは使用されません。
Key Protect、暗号化キーの管理について詳しくは、 Key Protect のドキュメントをご覧 ください。
Hyper Protect Crypto Servicesについて詳しくは、 資料 を参照してください。
Cross Region バケットの管理対象暗号化では、最も近い 高可用性ロケーション (us-south
または jp-tok
) の Key Protect インスタンスからのルート鍵を使用する 必要があります。
Satellite 環境では、すべての操作がサポートされているわけではありません。 詳しくは、 サポートされる Satellite API を参照してください。
ヘッダー | タイプ | 説明 |
---|---|---|
ibm-service-instance-id |
ストリング | このヘッダーは、バケットが作成され、データ使用量が課金されるサービスインスタンスを参照する。 |
ibm-sse-kp-encryption-algorithm |
ストリング | このヘッダーは、 Key Protect を使って保存される暗号化キーで使用するアルゴリズムとキーサイズを指定するために使われる。 この値は、ストリング AES256 に設定する必要があります。 |
ibm-sse-kp-customer-root-key-crn |
ストリング | このヘッダは、 Key Protect または Hyper Protect Crypto Services がこのバケツを暗号化するために使う、特定のルート鍵を参照するために使われる。 この値は、ルート・キーの完全な CRN でなければなりません。 |
構文
PUT https://{endpoint}/{bucket-name} # path style
PUT https://{bucket-name}.{endpoint} # virtual host style
要求の例
以下の例では、「secure-files」というバケットを作成します。
PUT /secure-files HTTP/1.1
Authorization: Bearer {token}
Content-Type: text/plain
Host: s3.us-south.objectstorage.s3.us-south.cloud-object-storage.appdomain.cloud.net
ibm-service-instance-id: {ibm-service-instance-id}
ibm-sse-kp-encryption-algorithm: "AES256"
ibm-sse-kp-customer-root-key-crn: {customer-root-key-id}
要求の例
PUT /secure-files HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
ibm-sse-kp-encryption-algorithm: "AES256"
ibm-sse-kp-customer-root-key-crn: {customer-root-key-id}
応答の例
HTTP/1.1 200 OK
Date: Wed, 24 Aug 2016 17:45:25 GMT
X-Clv-Request-Id: dca204eb-72b5-4e2a-a142-808d2a5c2a87
Accept-Ranges: bytes
Server: Cleversafe/3.9.0.115
X-Clv-S3-Version: 2.5
x-amz-request-id: dca204eb-72b5-4e2a-a142-808d2a5c2a87
Content-Length: 0
バケットのヘッダーの取得
バケツに対して発行された HEAD
は、そのバケツのヘッダを返します。
HEAD
要求は本体を返さないため、具体的なエラー・メッセージ (NoSuchBucket
など) が返されることはなく、返されるのは NotFound
のみです。
Satellite 環境では、すべての操作がサポートされているわけではありません。 詳しくは、 サポートされる Satellite API を参照してください。
構文
HEAD https://{endpoint}/{bucket-name} # path style
HEAD https://{bucket-name}.{endpoint} # virtual host style
要求の例
以下の例では、「images」バケットのヘッダーを取り出します。
HEAD /images HTTP/1.1
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
Authorization:Bearer {token}
要求の例
HEAD /images HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
応答の例
HTTP/1.1 200 OK
Date: Wed, 24 Aug 2016 17:46:35 GMT
X-Clv-Request-Id: 0c2832e3-3c51-4ea6-96a3-cd8482aca08a
Accept-Ranges: bytes
Server: Cleversafe/3.9.0.115
X-Clv-S3-Version: 2.5
x-amz-request-id: 0c2832e3-3c51-4ea6-96a3-cd8482aca08a
Content-Length: 0
要求の例
HEAD
Key Protect 暗号化されたバケツへのリクエストは、余分なヘッダを返します。
HEAD /secure-files HTTP/1.1
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
Authorization:Bearer {token}
要求の例
HEAD /secure-files HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
応答の例
HTTP/1.1 200 OK
Date: Wed, 24 Aug 2016 17:46:35 GMT
X-Clv-Request-Id: 0c2832e3-3c51-4ea6-96a3-cd8482aca08a
Accept-Ranges: bytes
Server: Cleversafe/3.9.0.115
X-Clv-S3-Version: 2.5
x-amz-request-id: 0c2832e3-3c51-4ea6-96a3-cd8482aca08a
Content-Length: 0
ibm-sse-kp-enabled: True
ibm-sse-kp-crk-id: {customer-root-key-id}
特定のバケツ内のオブジェクトをリストアップ(バージョン2)
バケツ宛の GET
リクエストは、オブジェクトのリストを返します。一度に返されるオブジェクトの数は1,000個までで、辞書順ではありません。 レスポンスで返される StorageClass
値は、ストレージ・クラス操作が Object Storage で実装されていないため、デフォルト値である。 この操作では、操作固有のヘッダーやペイロード・エレメントは使用されません。
Satellite 環境では、すべての操作がサポートされているわけではありません。 詳しくは、 サポートされる Satellite API を参照してください。
構文
GET https://{endpoint}/{bucket-name}?list-type=2 # path style
GET https://{bucket-name}.{endpoint}?list-type=2 # virtual host style
オプションの照会パラメーター
名前 | タイプ | 説明 |
---|---|---|
list-type |
ストリング | バージョン 2 の API を示し、値は 2 でなければなりません。 |
prefix |
ストリング | レスポンスを prefix で始まるオブジェクト名に限定する。 |
delimiter |
ストリング | prefix と delimiter との間のオブジェクトをグループ化します。 |
encoding-type |
ストリング | XML でサポートされない Unicode 文字がオブジェクト名に使用されている場合、このパラメーターを url に設定すると応答を適切にエンコードできます。 |
max-keys |
ストリング | 応答に表示するオブジェクトの数を制限します。 デフォルト値および最大値は 1,000 です。 |
fetch-owner |
ストリング | デフォルトでは、バージョン 2 の API では Owner 情報は含まれません。 レスポンスに Owner 情報が必要な場合、このパラメータを true に設定する。 |
continuation-token |
ストリング | レスポンスが切り捨てられたときに、次に返すオブジェクトのセットを指定します (IsTruncated 要素は true を返します )。あなたの最初の反応には、 NextContinuationToken の要素が含まれている。 このトークンを次の要求で continuation-token の値として使用します。 |
start-after |
ストリング | 特定のキー・オブジェクトの後にあるキー名を返します。 このパラメーターは最初の要求でのみ有効です。 要求に continuation-token パラメーターが含まれている場合、このパラメーターは無視されます。 |
要求の例 (単純)
次の要求は、「apiary」バケット内のオブジェクトをリストします。
GET /apiary?list-type=2 HTTP/1.1
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
Authorization: Bearer {token}
サンプル要求 (単純)
GET /apiary?list-type=2 HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
応答の例 (単純な例)
HTTP/1.1 200 OK
Date: Wed, 24 Aug 2016 17:36:24 GMT
X-Clv-Request-Id: 9f39ff2e-55d1-461b-a6f1-2d0b75138861
Accept-Ranges: bytes
Server: Cleversafe/3.13.3.57
X-Clv-S3-Version: 2.5
x-amz-request-id: 9f39ff2e-55d1-461b-a6f1-2d0b75138861
Content-Type: application/xml
Content-Length: 814
<ListBucketResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<Name>apiary</Name>
<Prefix/>
<KeyCount>3</KeyCount>
<MaxKeys>1000</MaxKeys>
<Delimiter/>
<IsTruncated>false</IsTruncated>
<Contents>
<Key>drone-bee</Key>
<LastModified>2016-08-25T17:38:38.549Z</LastModified>
<ETag>"0cbc6611f5540bd0809a388dc95a615b"</ETag>
<Size>4</Size>
<StorageClass>STANDARD</StorageClass>
</Contents>
<Contents>
<Key>soldier-bee</Key>
<LastModified>2016-08-25T17:49:06.006Z</LastModified>
<ETag>"37d4c94839ee181a2224d6242176c4b5"</ETag>
<Size>11</Size>
<StorageClass>STANDARD</StorageClass>
</Contents>
<Contents>
<Key>worker-bee</Key>
<LastModified>2016-08-25T17:46:53.288Z</LastModified>
<ETag>"d34d8aada2996fc42e6948b926513907"</ETag>
<Size>467</Size>
<StorageClass>STANDARD</StorageClass>
</Contents>
</ListBucketResult>
要求の例 (max-keys パラメーター)
次の要求は、返されるキーの最大数を 1 に設定して、「apiary」バケット内のオブジェクトをリストします。
GET /apiary?list-type=2&max-keys=1 HTTP/1.1
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
Authorization: Bearer {token}
リクエスト例(max-keysパラメータ)
GET /apiary?list-type=2&max-keys=1 HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
応答の例 (切り捨てられた応答)
HTTP/1.1 200 OK
Date: Wed, 24 Aug 2016 17:36:24 GMT
X-Clv-Request-Id: 9f39ff2e-55d1-461b-a6f1-2d0b75138861
Accept-Ranges: bytes
Server: Cleversafe/3.13.3.57
X-Clv-S3-Version: 2.5
x-amz-request-id: 9f39ff2e-55d1-461b-a6f1-2d0b75138861
Content-Type: application/xml
Content-Length: 598
<ListBucketResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<Name>apiary</Name>
<Prefix/>
<NextContinuationToken>1dPe45g5uuxjyASPegLq80sQsZKL5OB2by4Iz_7YGR5NjiOENBPZXqvKJN6_PgKGVzZYTlws7qqdWaMklzb8HX2iDxxl72ane3rUFQrvNMeIih49MZ4APUjrAuYI83KxSMmfKHGZyKallFkD5N6PwKg</NextContinuationToken>
<KeyCount>1</KeyCount>
<MaxKeys>1</MaxKeys>
<Delimiter/>
<IsTruncated>true</IsTruncated>
<Contents>
<Key>drone-bee</Key>
<LastModified>2016-08-25T17:38:38.549Z</LastModified>
<ETag>"0cbc6611f5540bd0809a388dc95a615b"</ETag>
<Size>4</Size>
<StorageClass>STANDARD</StorageClass>
</Contents>
</ListBucketResult>
要求の例 (continuation-token パラメーター)
次の要求は、continuation token を指定して、「apiary」バケット内のオブジェクトをリストします。
GET /apiary?list-type=2&max-keys=1&continuation-token=1dPe45g5uuxjyASPegLq80sQsZKL5OB2by4Iz_7YGR5NjiOENBPZXqvKJN6_PgKGVzZYTlws7qqdWaMklzb8HX2iDxxl72ane3rUFQrvNMeIih49MZ4APUjrAuYI83KxSMmfKHGZyKallFkD5N6PwKg HTTP/1.1
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
Authorization: Bearer {token}
リクエスト例(継続トークンパラメータ)
GET /apiary?list-type=2&max-keys=1&continuation-token=1dPe45g5uuxjyASPegLq80sQsZKL5OB2by4Iz_7YGR5NjiOENBPZXqvKJN6_PgKGVzZYTlws7qqdWaMklzb8HX2iDxxl72ane3rUFQrvNMeIih49MZ4APUjrAuYI83KxSMmfKHGZyKallFkD5N6PwKg HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
応答の例 (切り捨てられた応答、continuation-token パラメーター)
HTTP/1.1 200 OK
Date: Wed, 24 Aug 2016 17:36:24 GMT
X-Clv-Request-Id: 9f39ff2e-55d1-461b-a6f1-2d0b75138861
Accept-Ranges: bytes
Server: Cleversafe/3.13.3.57
X-Clv-S3-Version: 2.5
x-amz-request-id: 9f39ff2e-55d1-461b-a6f1-2d0b75138861
Content-Type: application/xml
Content-Length: 604
<ListBucketResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<Name>apiary</Name>
<Prefix/>
<ContinuationToken>1dPe45g5uuxjyASPegLq80sQsZKL5OB2by4Iz_7YGR5NjiOENBPZXqvKJN6_PgKGVzZYTlws7qqdWaMklzb8HX2iDxxl72ane3rUFQrvNMeIih49MZ4APUjrAuYI83KxSMmfKHGZyKallFkD5N6PwKg</ContinuationToken>
<NextContinuationToken>1a8j20CqowRrM4epIQ7fTBuyPZWZUeA8Epog16wYu9KhAPNoYkWQYhGURsIQbll1lP7c-OO-V5Vyzu6mogiakC4NSwlK4LyRDdHQgY-yPH4wMB76MfQR61VyxI4TJLxIWTPSZA0nmQQWcuV2mE4jiDA</NextContinuationToken>
<KeyCount>1</KeyCount>
<MaxKeys>1</MaxKeys>
<Delimiter/>
<IsTruncated>true</IsTruncated>
<Contents>
<Key>soldier-bee</Key>
<LastModified>2016-08-25T17:49:06.006Z</LastModified>
<ETag>"37d4c94839ee181a2224d6242176c4b5"</ETag>
<Size>11</Size>
<StorageClass>STANDARD</StorageClass>
</Contents>
</ListBucketResult>
特定のバケツ内のオブジェクトをリストアップする (非推奨)
この API は、以前のバージョンとの互換性のために組み込まれています。 バケット内のオブジェクトを取得するための推奨される方法については、バージョン 2 を参照してください。
Satellite 環境では、すべての操作がサポートされているわけではありません。 詳しくは、 サポートされる Satellite API を参照してください。
バケツ宛の GET
リクエストは、オブジェクトのリストを返します。一度に返されるオブジェクトの数は1,000個までで、辞書順ではありません。 レスポンスで返される StorageClass
値は、ストレージ・クラス操作が Object Storage で実装されていないため、デフォルト値である。 この操作では、操作固有のヘッダーやペイロード・エレメントは使用されません。
構文
GET https://{endpoint}/{bucket-name} # path style
GET https://{bucket-name}.{endpoint} # virtual host style
list object メソッドのオプションの照会パラメーター
名前 | タイプ | 説明 |
---|---|---|
prefix |
ストリング | レスポンスを prefix で始まるオブジェクト名に限定する。 |
delimiter |
ストリング | prefix と delimiter との間のオブジェクトをグループ化します。 |
encoding-type |
ストリング | XML でサポートされない Unicode 文字がオブジェクト名に使用されている場合、このパラメーターを url に設定すると応答を適切にエンコードできます。 |
max-keys |
ストリング | 応答に表示するオブジェクトの数を制限します。 デフォルト値および最大値は 1,000 です。 |
marker |
ストリング | UTF-8 バイナリオーダーで、リストを開始するオブジェクトを指定します。 |
要求の例
次の要求は、「apiary」バケット内のオブジェクトをリストします。
GET /apiary HTTP/1.1
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
Authorization: Bearer {token}
要求の例
GET /apiary HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
応答の例
HTTP/1.1 200 OK
Date: Wed, 24 Aug 2016 17:36:24 GMT
X-Clv-Request-Id: 9f39ff2e-55d1-461b-a6f1-2d0b75138861
Accept-Ranges: bytes
Server: Cleversafe/3.9.0.115
X-Clv-S3-Version: 2.5
x-amz-request-id: 9f39ff2e-55d1-461b-a6f1-2d0b75138861
Content-Type: application/xml
Content-Length: 909
<ListBucketResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<Name>apiary</Name>
<Prefix/>
<Marker/>
<MaxKeys>1000</MaxKeys>
<Delimiter/>
<IsTruncated>false</IsTruncated>
<Contents>
<Key>drone-bee</Key>
<LastModified>2016-08-25T17:38:38.549Z</LastModified>
<ETag>"0cbc6611f5540bd0809a388dc95a615b"</ETag>
<Size>4</Size>
<Owner>
<ID>{account-id}</ID>
<DisplayName>{account-id}</DisplayName>
</Owner>
<StorageClass>STANDARD</StorageClass>
</Contents>
<Contents>
<Key>soldier-bee</Key>
<LastModified>2016-08-25T17:49:06.006Z</LastModified>
<ETag>"37d4c94839ee181a2224d6242176c4b5"</ETag>
<Size>11</Size>
<Owner>
<ID>{account-id}</ID>
<DisplayName>{account-id}</DisplayName>
</Owner>
<StorageClass>STANDARD</StorageClass>
</Contents>
<Contents>
<Key>worker-bee</Key>
<LastModified>2016-08-25T17:46:53.288Z</LastModified>
<ETag>"d34d8aada2996fc42e6948b926513907"</ETag>
<Size>467</Size>
<Owner>
<ID>{account-id}</ID>
<DisplayName>{account-id}</DisplayName>
</Owner>
<StorageClass>STANDARD</StorageClass>
</Contents>
</ListBucketResult>
バケットの削除
空のバケツに対して発行された DELETE
リクエストは、そのバケツを削除します。 バケットの名前は、削除後 10 分間、システムによって予約されます。 10 分後、名前は再利用のために解放されます。 削除できるのは空のバケットのみです。
Object Storage サービス・インスタンスが削除されると、そのインスタンス内のすべてのバケット名がシステムによって 7 日間保持されます。 7 日後、名前は再利用のためにリリースされます。
Satellite 環境では、すべての操作がサポートされているわけではありません。 詳しくは、 サポートされる Satellite API を参照してください。
構文
DELETE https://{endpoint}/{bucket-name} # path style
DELETE https://{bucket-name}.{endpoint} # virtual host style
オプションのヘッダー
名前 | タイプ | 説明 |
---|---|---|
aspera-ak-max-tries |
ストリング | 削除操作を再試行する回数を指定します。 デフォルト値は 2 です。 |
要求の例
DELETE /apiary HTTP/1.1
Host: s3.us.cloud-object-storage.appdomain.cloud
Authorization: Bearer {token}
要求の例
DELETE /apiary HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
サーバーは 204 No Content
と応答します。
空でないバケットの削除が要求された場合、サーバーは 409 Conflict
と応答します。
応答の例
<Error>
<Code>BucketNotEmpty</Code>
<Message>The bucket you tried to delete is not empty.</Message>
<Resource>/apiary/</Resource>
<RequestId>9d2bbc00-2827-4210-b40a-8107863f4386</RequestId>
<httpStatusCode>409</httpStatusCode>
</Error>
既存のバケットに対するオブジェクト・ロックの構成
Satellite 環境では、すべての操作がサポートされているわけではありません。 詳しくは、 サポートされる Satellite API を参照してください。
?object-lock
照会パラメーターを使用して空のバケットにアドレス指定された PUT
要求は、バケットに新しいオブジェクト・ロック構成を設定します。
構文
PUT https://{endpoint}/{bucket-name}?object-lock # path style
PUT https://{bucket-name}.{endpoint}?object-lock # virtual host style
オブジェクト・ロック構成は、要求の本体で XML として提供されます。 新規要求は、バケットに存在する既存の複製ルールを上書きします。
オブジェクト・ロック構成には 1 つのルールが含まれている必要があります。
ヘッダー | タイプ | 説明 |
---|---|---|
Content-MD5 |
ストリング | 必須: base64 でエンコードされた、ペイロードの 128 ビット MD5 ハッシュ。ペイロードが転送中に変更されなかったことを確認するための保全性検査として使用されます。 |
要求の本体には、以下のスキーマの XML ブロックが含まれている必要があります。
エレメント | タイプ | 子 | 上位 | 制約 |
---|---|---|---|---|
ObjectLockConfiguration |
コンテナー | ObjectLockEnabled , Rule |
なし | 限度 1。 |
ObjectLockEnabled |
ストリング | なし | ObjectLockConfiguration |
有効な値は ENABLED だけです。 |
Rule |
コンテナー | DefaultRetention |
ObjectLockConfiguration |
限度 1 |
DefaultRetention |
コンテナー | Days , Mode , Years |
Rule |
限度 1。 |
Days |
整数 | なし | DefaultRetention |
デフォルトの保存期間に指定する日数です。 Years と組み合わせることはできません。 |
Mode |
ストリング | なし | DefaultRetention |
現在、 COMPLIANCE のみがサポートされています。 |
Years |
整数 | なし | DefaultRetention |
デフォルトの保存期間として指定したい年数。 Days と組み合わせることはできません。 |
要求の例
次の要求は、「apiary」バケット内のオブジェクトをリストします。
GET /apiary HTTP/1.1
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
Authorization: Bearer {token}
応答の例
HTTP/1.1 200 OK
Date: Wed, 24 Aug 2016 17:36:24 GMT
X-Clv-Request-Id: 9f39ff2e-55d1-461b-a6f1-2d0b75138861
Accept-Ranges: bytes
Server: Cleversafe/3.9.0.115
X-Clv-S3-Version: 2.5
x-amz-request-id: 9f39ff2e-55d1-461b-a6f1-2d0b75138861
Content-Type: application/xml
Content-Length: 909
<ObjectLockConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<ObjectLockEnabled>ENABLED</ObjectLockEnabled>
<Rule>
<DefaultRetention>
<Days>30</Days>
<Mode>COMPLIANCE</Mode>
</DefaultRetention>
</Rule>
</ObjectLockConfiguration>
バケットのキャンセル済みまたは未完了のマルチパート・アップロードをリストします
適切なパラメーターを指定してバケットに対して発行される GET
は、バケットのキャンセル済みまたは未完了のマルチパート・アップロードに関する情報を取得します。
Satellite 環境では、すべての操作がサポートされているわけではありません。 詳しくは、 サポートされる Satellite API を参照してください。
構文
GET https://{endpoint}/{bucket-name}?uploads= # path style
GET https://{bucket-name}.{endpoint}?uploads= # virtual host style
パラメーター
名前 | タイプ | 説明 |
---|---|---|
prefix |
ストリング | レスポンスを {prefix} で始まるオブジェクト名に限定する。 |
delimiter |
ストリング | prefix と delimiter との間のオブジェクトをグループ化します。 |
encoding-type |
ストリング | XML でサポートされない Unicode 文字がオブジェクト名に使用されている場合、このパラメーターを url に設定すると応答を適切にエンコードできます。 |
max-uploads |
整数 | 応答に表示するオブジェクトの数を制限します。 デフォルト値および最大値は 1,000 です。 |
key-marker |
ストリング | リストをどこから始めるかを指定する。 |
upload-id-marker |
ストリング | key-marker が指定されていない場合は無視される。そうでない場合は、 upload-id-marker より上の部分のリストアップを開始するポイントを設定する。 |
要求の例
以下の例では、現在キャンセルされている未完了のマルチパート・アップロードをすべて取得します。
GET /apiary?uploads= HTTP/1.1
Authorization: Bearer {token}
Host: s3.us.cloud-object-storage.appdomain.cloud
要求の例
GET /apiary?uploads= HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
応答の例 (進行中のマルチパート・アップロードなし)
HTTP/1.1 200 OK
Date: Wed, 5 Oct 2016 15:22:27 GMT
X-Clv-Request-Id: 9fa96daa-9f37-42ee-ab79-0bcda049c671
Accept-Ranges: bytes
Server: Cleversafe/3.9.0.129
X-Clv-S3-Version: 2.5
x-amz-request-id: 9fa96daa-9f37-42ee-ab79-0bcda049c671
Content-Type: application/xml
Content-Length: 374
<ListMultipartUploadsResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<Bucket>apiary</Bucket>
<KeyMarker/>
<UploadIdMarker/>
<NextKeyMarker>multipart-object-123</NextKeyMarker>
<NextUploadIdMarker>0000015a-df89-51d0-2790-dee1ac994053</NextUploadIdMarker>
<MaxUploads>1000</MaxUploads>
<IsTruncated>false</IsTruncated>
<Upload>
<Key>file</Key>
<UploadId>0000015a-d92a-bc4a-c312-8c1c2a0e89db</UploadId>
<Initiator>
<ID>d4d11b981e6e489486a945d640d41c4d</ID>
<DisplayName>d4d11b981e6e489486a945d640d41c4d</DisplayName>
</Initiator>
<Owner>
<ID>d4d11b981e6e489486a945d640d41c4d</ID>
<DisplayName>d4d11b981e6e489486a945d640d41c4d</DisplayName>
</Owner>
<StorageClass>STANDARD</StorageClass>
<Initiated>2017-03-16T22:09:01.002Z</Initiated>
</Upload>
<Upload>
<Key>multipart-object-123</Key>
<UploadId>0000015a-df89-51d0-2790-dee1ac994053</UploadId>
<Initiator>
<ID>d4d11b981e6e489486a945d640d41c4d</ID>
<DisplayName>d4d11b981e6e489486a945d640d41c4d</DisplayName>
</Initiator>
<Owner>
<ID>d4d11b981e6e489486a945d640d41c4d</ID>
<DisplayName>d4d11b981e6e489486a945d640d41c4d</DisplayName>
</Owner>
<StorageClass>STANDARD</StorageClass>
<Initiated>2017-03-18T03:50:02.960Z</Initiated>
</Upload>
</ListMultipartUploadsResult>
バケットのクロス・オリジン・リソース共有構成のリスト
適切なパラメーターを指定してバケットに対して発行される GET
は、バケットのクロス・オリジン・リソース共有 (CORS) 構成に関する情報を取得します。
Satellite 環境では、すべての操作がサポートされているわけではありません。 詳しくは、 サポートされる Satellite API を参照してください。
構文
GET https://{endpoint}/{bucket-name}?cors= # path style
GET https://{bucket-name}.{endpoint}?cors= # virtual host style
要求の例
以下の例では、「apiary」バケット上の CORS 構成をリストします。
GET /apiary?cors= HTTP/1.1
Authorization: Bearer {token}
Host: s3.us.cloud-object-storage.appdomain.cloud
要求の例
GET /apiary?cors= HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
応答例 CORS 構成が設定されていない
HTTP/1.1 200 OK
Date: Wed, 5 Oct 2016 15:20:30 GMT
X-Clv-Request-Id: 0b69bce1-8420-4f93-a04a-35d7542799e6
Accept-Ranges: bytes
Server: Cleversafe/3.9.0.129
X-Clv-S3-Version: 2.5
x-amz-request-id: 0b69bce1-8420-4f93-a04a-35d7542799e6
Content-Type: application/xml
Content-Length: 123
<CORSConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<CORSRule>
<AllowedMethod>GET</AllowedMethod>
<AllowedMethod>PUT</AllowedMethod>
<AllowedMethod>POST</AllowedMethod>
<AllowedOrigin>http://www.ibm.com</AllowedOrigin>
</CORSRule>
</CORSConfiguration>
バケットのクロス・オリジン・リソース共有構成の作成
適切なパラメーターを指定してバケットに対して発行される PUT
は、バケットのクロス・オリジンリソース共有 (CORS) 構成を作成または置換します。
Satellite 環境では、すべての操作がサポートされているわけではありません。 詳しくは、 サポートされる Satellite API を参照してください。
構文
PUT https://{endpoint}/{bucket-name}?cors= # path style
PUT https://{bucket-name}.{endpoint}?cors= # virtual host style
ペイロード要素
要求の本体には、以下のスキーマの XML ブロックが含まれている必要があります。
エレメント | タイプ | 子 | 上位 | 制約 |
---|---|---|---|---|
CORSConfiguration |
コンテナー | CORSRule |
|
|
CORSRule |
コンテナー | AllowedOrigin , AllowedMethod |
の削除 |
|
AllowedOrigin |
ストリング |
|
CORSRule |
有効な起点ストリング |
AllowedMethod |
ストリング |
|
CORSRule |
有効なメソッド・ストリング |
必須の Content-MD5
ヘッダーは、base64 でエンコードされた MD5 ハッシュのバイナリー表現である必要があります。 以下のスニペットは、その特定のヘッダーのコンテンツを実現する 1 つの方法を示しています。
echo -n (XML block) | openssl dgst -md5 -binary | openssl enc -base64
要求の例
以下の例では、 www.ibm.com
からのリクエストに対して、 GET
, PUT
, POST
のリクエストをバケットに発行できるようにする CORS 設定を追加しています。
PUT /apiary?cors= HTTP/1.1
Authorization: Bearer {token}
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
Content-MD5: M625BaNwd/OytcM7O5gIaQ==
Content-Length: 237
要求の例
PUT /apiary?cors= HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
Content-MD5: M625BaNwd/OytcM7O5gIaQ==
Content-Length: 237
<CORSConfiguration>
<CORSRule>
<AllowedOrigin>http://www.ibm.com</AllowedOrigin>
<AllowedMethod>GET</AllowedMethod>
<AllowedMethod>PUT</AllowedMethod>
<AllowedMethod>POST</AllowedMethod>
</CORSRule>
</CORSConfiguration>
応答の例
HTTP/1.1 200 OK
Date: Wed, 5 Oct 2016 15:39:38 GMT
X-Clv-Request-Id: 7afca6d8-e209-4519-8f2c-1af3f1540b42
Accept-Ranges: bytes
Server: Cleversafe/3.9.0.129
X-Clv-S3-Version: 2.5
x-amz-request-id: 7afca6d8-e209-4519-8f2c-1af3f1540b42
Content-Length: 0
バケットのクロス・オリジン・リソース共有構成の削除
適切なパラメーターを指定してバケットに対して発行される DELETE
は、バケットのクロス・オリジンリソース共有 (CORS) 構成を作成または置換します。
Satellite 環境では、すべての操作がサポートされているわけではありません。 詳しくは、 サポートされる Satellite API を参照してください。
構文
DELETE https://{endpoint}/{bucket-name}?cors= # path style
DELETE https://{bucket-name}.{endpoint}?cors= # virtual host style
要求の例
以下の例では、バケットの CORS 構成を削除します。
DELETE /apiary?cors= HTTP/1.1
Authorization: Bearer {token}
Host: s3.us.cloud-object-storage.appdomain.cloud
要求の例
DELETE /apiary?cors= HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
サーバーは 204 No Content
と応答します。
バケットのロケーション制約のリスト
適切なパラメーターを使用してバケットに対して発行される GET
は、バケットのロケーション情報を取得します。
Satellite 環境では、すべての操作がサポートされているわけではありません。 詳しくは、 サポートされる Satellite API を参照してください。
構文
GET https://{endpoint}/{bucket-name}?location # path style
GET https://{bucket-name}.{endpoint}?location # virtual host style
要求の例
以下の例では、「apiary」バケットのロケーションを取得します。
GET /apiary?location= HTTP/1.1
Authorization: Bearer {token}
Host: s3.us.cloud-object-storage.appdomain.cloud
要求の例
GET /apiary?location= HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
応答の例
HTTP/1.1 200 OK
Date: Tue, 12 Jun 2018 21:10:57 GMT
X-Clv-Request-Id: 0e469546-3e43-4c6b-b814-5ad0db5b638f
Accept-Ranges: bytes
Server: Cleversafe/3.13.3.57
X-Clv-S3-Version: 2.5
x-amz-request-id: 0e469546-3e43-4c6b-b814-5ad0db5b638f
Content-Type: application/xml
Content-Length: 161
<LocationConstraint xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
us-south-standard
</LocationConstraint>
バケットのライフサイクル構成の作成
PUT
操作は、lifecycle 照会パラメーターを使用してバケットのライフサイクル設定を設定します。 ペイロードの保全性検査のために Content-MD5
ヘッダーが必須です。
Satellite 環境では、すべての操作がサポートされているわけではありません。 詳しくは、 サポートされる Satellite API を参照してください。
構文
PUT https://{endpoint}/{bucket-name}?lifecycle # path style
PUT https://{bucket-name}.{endpoint}?lifecycle # virtual host style
ペイロード要素
要求の本体には、以下のスキーマの XML ブロックが含まれている必要があります。
エレメント | タイプ | 子 | 上位 | 制約 |
---|---|---|---|---|
LifecycleConfiguration |
コンテナー | Rule |
なし | 限度 1 |
Rule |
コンテナー | ID , Status , Filter , Transition |
LifecycleConfiguration |
限度 1 |
ID |
ストリング | なし | Rule |
必須 は、(a-z 、A-Z 、0-9 ) と以下の記号で構成されます。! _ . * ' ( ) - |
Filter |
ストリング | Prefix |
Rule |
** 要素を含んでいる**必要がありますPrefix 。 |
Expiration |
コンテナー | Days , Date , ExpiredObjectDeleteMarker |
Rule |
限度 1 |
Prefix |
ストリング | なし | Filter |
遷移 (アーカイブ) ルールを使用する場合は、値を <Prefix/> に設定する 必要があります。 この制限は、有効期限ルールには適用されません。 |
Transition |
コンテナー | Days , StorageClass |
Rule |
1 つの遷移規則と、合計 1000 個の規則を制限します。 |
Days |
負でない整数 | なし | Transition |
0 以上の値で なければなりません。 |
Date |
日付 | なし | Transition |
ISO 8601形式で、日付はf未来でなければならない。 |
StorageClass |
ストリング | なし | Transition |
GLACIER または ACCELERATED に設定する 必要があります。 |
ExpiredObjectDeleteMarker |
ブール値 | なし | Expiration |
true または false でなければならない。 |
NoncurrentVersionExpiration |
コンテナー | NoncurrentDays |
NoncurrentVersionExpiration |
限度 1 |
NoncurrentDays |
正整数 | なし | Transition |
0 より大きい値である必要があります。 |
AbortIncompleteMultipartUpload |
コンテナー | DaysAfterInitiation |
Rule |
限度 1 |
DaysAfterInitiation |
負でない整数 | なし | AbortIncompleteMultipartUpload |
0 より大きい値である必要があります。 |
IBM Cloud® Object Storage IaaS (非 IAM) アカウントは、遷移ストレージ・クラスを ACCELERATED
に設定できません。
<LifecycleConfiguration>
<Rule>
<ID>{string}</ID>
<Status>Enabled</Status>
<Filter>
<Prefix/>
</Filter>
<Transition>
<Days>{integer}</Days>
<StorageClass>GLACIER</StorageClass>
</Transition>
</Rule>
</LifecycleConfiguration>
必須の Content-MD5
ヘッダーは、base64 でエンコードされた MD5 ハッシュのバイナリー表現である必要があります。 以下のスニペットは、その特定のヘッダーのコンテンツを実現する 1 つの方法を示しています。
echo -n (XML block) | openssl dgst -md5 -binary | openssl enc -base64
要求の例
PUT /apiary?lifecycle HTTP/1.1
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
Authorization: {authorization-string}
Content-Type: text/plain
Content-MD5: M625BaNwd/OytcM7O5gIaQ==
Content-Length: 305
要求の例
PUT /apiary?lifecycle HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
Content-Type: text/plain
Content-MD5: M625BaNwd/OytcM7O5gIaQ==
Content-Length: 305
Host: s3.us.cloud-object-storage.appdomain.cloud
<LifecycleConfiguration>
<Rule>
<ID>my-archive-policy</ID>
<Filter>
<Prefix/>
</Filter>
<Status>Enabled</Status>
<Transition>
<Days>20</Days>
<StorageClass>GLACIER</StorageClass>
</Transition>
</Rule>
</LifecycleConfiguration>
サーバーは 200 OK
と応答します。
<LifecycleConfiguration>
<Rule>
<ID>{string}</ID>
<Status>Enabled</Status>
<Filter>
<Prefix/>
</Filter>
<Expiration>
<Days>{integer}</Days>
</Expiration>
</Rule>
</LifecycleConfiguration>
必須の Content-MD5
ヘッダーは、base64 でエンコードされた MD5 ハッシュのバイナリー表現である必要があります。 以下のスニペットは、その特定のヘッダーのコンテンツを実現する 1 つの方法を示しています。
echo -n (XML block) | openssl dgst -md5 -binary | openssl enc -base64
要求の例
PUT /cit-test?lifecycle HTTP/1.1
Host: 192.168.35.22
Date: Fri, 28 Feb 2020 14:12:06 +0000
Authorization: AWS MOfXYiHQ9QTyD2ALoiOh:WrlFRE2KMmhutBf3CxIZoNLl/ko=
Content-MD5: To3JYtaVNR3+aGYtl1dlmw==
Content-Length: 321
<LifecycleConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<Rule>
<ID>ID1</ID>
<Status>Enabled</Status>
<Filter>
<Prefix/>
</Filter>
<Expiration>
<Days>100</Days>
</Expiration>
</Rule>
</LifecycleConfiguration>
応答例 サーバーは 200 OK
で応答する。
We are completely uploaded and fine
HTTP/1.1 200 OK
Date: Fri, 28 Feb 2020 14:12:06 GMT
X-Clv-Request-Id: 587d909f-4939-41ef-8c16-80aea16a0587
Server: Cleversafe/3.14.9.53
X-Clv-S3-Version: 2.5
x-amz-request-id: 587d909f-4939-41ef-8c16-80aea16a0587
Content-Length: 0
要求の例
PUT /{bucket-name}?lifecycle HTTP/1.1
Authorization: Bearer {token}
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
ibm-service-instance-id: {ibm-service-instance-id}
Content-Length: 123
要求の例
PUT /{bucket-name}?lifecycle HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
Content-Length: 123
バケットのライフサイクル構成の取得
GET
操作は、lifecycle 照会パラメーターを使用してバケットのライフサイクル設定を取得します。
構文
GET https://{endpoint}/{bucket-name}?lifecycle # path style
GET https://{bucket-name}.{endpoint}?lifecycle # virtual host style
要求の例
GET /apiary?lifecycle HTTP/1.1
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
Authorization: {authorization-string}
要求の例
GET /apiary?lifecycle HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
応答例
<LifecycleConfiguration>
<Rule>
<ID>my-archive-policy</ID>
<Filter>
<Prefix/>
</Filter>
<Status>Enabled</Status>
<Transition>
<Days>20</Days>
<StorageClass>GLACIER</StorageClass>
</Transition>
</Rule>
</LifecycleConfiguration>
要求の例
GET /cit_dump-log?lifecycle HTTP/1.1
Host: 192.168.35.22
User-Agent: curl/7.64.1
Accept: */*
Date: Fri, 28 Feb 2020 14:00:43 +0000
Authorization: AWS MOfXYiHQ9QTyD2ALoiOh:iKm2QNetyW740kylP6ja2pze3DM=
Content-MD5: 1B2M2Y8AsgTpgAmY7PhCfg==
応答例
HTTP/1.1 200 OK
Date: Fri, 28 Feb 2020 14:00:43 GMT
X-Clv-Request-Id: ecbf9294-284d-4169-b2cd-5d52b2450808
Server: Cleversafe/3.14.9.53
X-Clv-S3-Version: 2.5
Accept-Ranges: bytes
x-amz-request-id: ecbf9294-284d-4169-b2cd-5d52b2450808
Content-Type: application/xml
Content-Length: 276
<LifecycleConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<Rule>
<ID>ID1</ID>
<Status>Enabled</Status>
<Filter>
<Prefix/>
</Filter>
<Expiration>
<Days>270</Days>
</Expiration>
</Rule>
</LifecycleConfiguration>
有効期限ルールを使用した失効データの削除
バケットの Immutable Object Storage 保存ポリシーの対象となるオブジェクトの有効期限アクションは、保存ポリシーが適用されなくなるまで据え置かれます。
ライフサイクル構成を使用してオブジェクトを削除する方法について詳しくは、 資料 を参照してください。
PUT
操作のこの実装は、lifecycle
照会パラメーターを使用してバケットのライフサイクル設定を設定します。 この操作では、バケットに対して単一のライフサイクル・ポリシー定義が可能です。 ポリシーは、以下のパラメータで構成されるルールセットとして定義される: ID
Status
、 Filter
、 Expiration
。
Satellite 環境では、すべての操作がサポートされているわけではありません。 詳しくは、 サポートされる Satellite API を参照してください。
ヘッダー | タイプ | 説明 |
---|---|---|
Content-MD5 |
ストリング | 必須: base64 でエンコードされた、ペイロードの 128 ビット MD5 ハッシュ。ペイロードが転送中に変更されなかったことを確認するための保全性検査として使用されます。 |
以下のスニペットは、その特定のヘッダーのコンテンツを実現する 1 つの方法を示しています。
echo -n (XML block) | openssl dgst -md5 -binary | openssl enc -base64
要求の本体には、以下のスキーマの XML ブロックが含まれている必要があります。
エレメント | タイプ | 子 | 上位 | 制約 |
---|---|---|---|---|
LifecycleConfiguration |
コンテナー | Rule |
なし | 限度 1。 |
Rule |
コンテナー | ID , Status , Filter , Expiration |
LifecycleConfiguration |
限度 1000。 |
ID |
ストリング | なし | Rule |
(a-z 、A-Z 、0-9 ) と以下の記号で構成されている必要があります。 ! _ . * ' ( ) - |
Filter |
ストリング | Prefix |
Rule |
Prefix 要素を含んでいる必要があります |
Prefix |
ストリング | なし | Filter |
ルールは、この接頭部に一致するキーを持つすべてのオブジェクトに適用されます。 |
Expiration |
コンテナー | Days またはDate |
Rule |
限度 1。 |
Days |
負でない整数 | なし | Expiration |
0 より大きい値である必要があります。 |
Date |
日付 | なし | Expiration |
ISO 8601 形式でなければなりません。 |
構文
PUT https://{endpoint}/{bucket}?lifecycle # path style
PUT https://{bucket}.{endpoint}?lifecycle # virtual host style
要求の例
PUT /images?lifecycle HTTP/1.1
Host: s3.us.cloud-object-storage.appdomain.cloud
Date: Wed, 7 Feb 2018 17:50:00 GMT
Authorization: authorization string
Content-Type: text/plain
Content-MD5: M625BaNwd/OytcM7O5gIaQ==
Content-Length: 305
<LifecycleConfiguration>
<Rule>
<ID>id1</ID>
<Filter />
<Status>Enabled</Status>
<Expiration>
<Days>60</Days>
</Expiration>
</Rule>
</LifecycleConfiguration>
バケットのライフサイクル構成の削除
適切なパラメーターを使用してバケットに対して発行される DELETE
は、バケットのライフサイクル構成を削除します。
構文
DELETE https://{endpoint}/{bucket-name}?lifecycle # path style
DELETE https://{bucket-name}.{endpoint}?lifecycle # virtual host style
要求の例
DELETE /apiary?lifecycle HTTP/1.1
Authorization: {authorization-string}
Host: s3.us.cloud-object-storage.appdomain.cloud
要求の例
DELETE /apiary?lifecycle HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
サーバーは 204 No Content
と応答します。
要求の例
DELETE /cit-test?lifecycle HTTP/1.1
Host: 192.168.35.22
User-Agent: curl/7.64.1
Accept: */*
Date: Fri, 28 Feb 2020 14:16:47 +0000
Authorization: AWS MOfXYiHQ9QTyD2ALoiOh:n25GU28DiBgkNVgET5hKmLmp938=
Content-MD5: 1B2M2Y8AsgTpgAmY7PhCfg==
応答の例
HTTP/1.1 204 No Content
Date: Fri, 28 Feb 2020 14:16:47 GMT
X-Clv-Request-Id: 3e8bdf1e-b611-4b83-a404-e7d3e58e60b0
Server: Cleversafe/3.14.9.53
X-Clv-S3-Version: 2.5
x-amz-request-id: 3e8bdf1e-b611-4b83-a404-e7d3e58e60b0
サーバーは 204 No Content
と応答します。
既存バケットへの保存ポリシーの追加
Immutable Object Storage は、特定の地域でのみ使用可能です。詳しくは、統合サービスを参照してください。 また、このサービスにはスタンダード料金プランが必要である。 詳しくは、料金設定を参照してください。
Immutable Object Storage について詳しくは、 資料 を参照してください。
保持期間設定 MinimumRetention
、 DefaultRetention
、 MaximumRetention
の最小および最大サポート値は、最小0日、最大365243日(1000年)である。
この操作では、追加の照会パラメーターは使用されません。 必須の Content-MD5
ヘッダーは、base64 でエンコードされた MD5 ハッシュのバイナリー表現である必要があります。 以下のスニペットは、その特定のヘッダーのコンテンツを実現する 1 つの方法を示しています。
ポリシーは保存期間の終了まで適用され、保存期間が満了するまで変更することはできません。 IBM Cloud® Object Storage はほとんどの操作で S3 API を使用しますが、保存ポリシーの構成に使用される API は S3 API と同じではありません。ただし、一部の用語は共有される場合があります。 IBM Cloud 管理者であっても、組織内のすべてのユーザーが削除できないオブジェクトを作成できないように、この資料をよくお読みください。
Satellite 環境では、すべての操作がサポートされているわけではありません。 詳しくは、 サポートされる Satellite API を参照してください。
echo -n (XML block) | openssl dgst -md5 -binary | openssl enc -base64
構文
PUT https://{endpoint}/{bucket-name}?protection= # path style
PUT https://{bucket-name}.{endpoint}?protection= # virtual host style
要求の本体には、以下のスキーマの XML ブロックが含まれている必要があります。
エレメント | タイプ | 子 | 上位 | 制約 |
---|---|---|---|---|
ProtectionConfiguration |
コンテナー | Status , MinimumRetention , MaximumRetention , DefaultRetention |
|
|
Status |
ストリング |
|
ProtectionConfiguration |
有効な状況ストリング |
MinimumRetention |
コンテナー | Days |
ProtectionConfiguration |
|
MaximumRetention |
コンテナー | Days |
ProtectionConfiguration |
|
DefaultRetention |
コンテナー | Days |
ProtectionConfiguration |
|
Days |
整数 |
|
MinimumRetention , MaximumRetention , DefaultRetention |
有効な保存整数 |
要求の例
PUT /example-bucket?protection= HTTP/1.1
Authorization: {authorization-string}
x-amz-date: 20181011T190354Z
x-amz-content-sha256: 2938f51643d63c864fdbea618fe71b13579570a86f39da2837c922bae68d72df
Content-MD5: GQmpTNpruOyK6YrxHnpj7g==
Content-Type: text/plain
Host: 67.228.254.193
Content-Length: 299
<ProtectionConfiguration>
<Status>Retention</Status>
<MinimumRetention>
<Days>100</Days>
</MinimumRetention>
<MaximumRetention>
<Days>10000</Days>
</MaximumRetention>
<DefaultRetention>
<Days>2555</Days>
</DefaultRetention>
</ProtectionConfiguration>
応答の例
HTTP/1.1 200 OK
Date: Wed, 5 Oct 2018 15:39:38 GMT
X-Clv-Request-Id: 7afca6d8-e209-4519-8f2c-1af3f1540b42
Accept-Ranges: bytes
Server: Cleversafe/3.14.1
X-Clv-S3-Version: 2.5
x-amz-request-id: 7afca6d8-e209-4519-8f2c-1af3f1540b42
Content-Length: 0
静的ウェブサイトホスティング用のバケットを設定する
適切なパラメータを持つ Bucket に対して発行された PUT
は、その Bucket の静的なウェブサイト設定を作成したり置き換えたりします。
Satellite 環境では、すべての操作がサポートされているわけではありません。 詳しくは、 サポートされる Satellite API を参照してください。
構文
PUT https://{endpoint}/{bucket-name}?website # path style
PUT https://{bucket-name}.{endpoint}?website # virtual host style
ペイロード要素
要求の本体には、以下のスキーマの XML ブロックが含まれている必要があります。
エレメント | タイプ | 子 | 上位 | 注記 |
---|---|---|---|---|
WebsiteConfiguration |
コンテナー | ErrorDocument , IndexDocument , RedirectAllRequestsTo , RoutingRule |
|
必須 |
ErrorDocument |
コンテナー | Key |
WebsiteConfiguration |
|
Key |
ストリング |
|
ErrorDocument |
|
IndexDocument |
コンテナー | Suffix |
WebsiteConfiguration |
|
Suffix |
ストリング |
|
IndexDocument |
|
RedirectAllRequestsTo |
コンテナー | HostName , Protocol |
WebsiteConfiguration |
指定する場合は、それが指定されている唯一の要素でなければなりません。 |
HostName |
ストリング |
|
RedirectAllRequestsTo |
|
Protocol |
ストリング |
|
RedirectAllRequestsTo |
|
RoutingRules |
コンテナー | RoutingRule |
WebsiteConfiguration |
|
RoutingRule |
コンテナー | Condition , Redirect |
RoutingRules |
|
Condition |
コンテナー | HttpErrorCodeReturnedEquals , KeyPrefixEquals |
RoutingRule |
|
HttpErrorCodeReturnedEquals |
ストリング |
|
Condition |
|
KeyPrefixEquals |
ストリング |
|
Condition |
|
Redirect |
コンテナー | HostName , HttpRedirectCode , Protocol , ReplaceKeyPrefixWith , ReplaceKeyWith |
RoutingRule |
|
HostName |
ストリング |
|
Redirect |
|
HttpRedirectCode |
ストリング |
|
Redirect |
|
Protocol |
ストリング |
|
Redirect |
|
ReplaceKeyPrefixWith |
ストリング |
|
Redirect |
|
ReplaceKeyWith |
ストリング |
|
Redirect |
|
要求の例
以下の例では、各接頭部で index.html
ファイルを検索する基本的な Web サイトにサービスを提供する Web サイト構成を追加します。 例えば、 /apiary/images/
に対する要求では、実際のファイルを指定する必要なしに、 /apiary/images/index.html
の内容が提供されます。
PUT /apiary?website HTTP/1.1
Authorization: Bearer {token}
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
Content-Length: 119
PUT /apiary?website HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
Content-Length: 119
<WebsiteConfiguration>
<IndexDocument>
<Suffix>index.html</Suffix>
</IndexDocument>
</WebsiteConfiguration>
応答の例
HTTP/1.1 200 OK
Date: Wed, 5 Oct 2020 15:39:38 GMT
X-Clv-Request-Id: 7afca6d8-e209-4519-8f2c-1af3f1540b42
Accept-Ranges: bytes
Content-Length: 0
バケットの Web サイト構成を削除します
適切なパラメーターを指定してバケットに対して発行された DELETE
要求は、バケットの Web サイト構成を削除します。
Satellite 環境では、すべての操作がサポートされているわけではありません。 詳しくは、 サポートされる Satellite API を参照してください。
構文
DELETE https://{endpoint}/{bucket-name}?website # path style
DELETE https://{bucket-name}.{endpoint}?website # virtual host style
要求の例
以下の例では、バケットの Web サイト構成を削除します。
DELETE /apiary?website HTTP/1.1
Authorization: Bearer {token}
Host: s3.us.cloud-object-storage.appdomain.cloud
要求の例
DELETE /apiary?website HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
サーバーは 204 No Content
と応答します。
バケット上のパブリック ACL をブロックします
適切なパラメーターを指定してバケットに発行された PUT
要求は、バケットにパブリック・アクセス ACL を追加できないようにします。 これは、新規 ACL 要求を失敗させるか、無視するかのいずれかに設定できます。 BlockPublicAcls
は既存の ACL には影響しませんが、 IgnorePublicAcls
は既存の ACL を無視します。 この操作は、IAM パブリック・アクセス・ポリシーには影響しません。
Satellite 環境では、すべての操作がサポートされているわけではありません。 詳しくは、 サポートされる Satellite API を参照してください。
構文
PUT https://{endpoint}/{bucket-name}?publicAccessBlock # path style
PUT https://{bucket-name}.{endpoint}?publicAccessBlock # virtual host style
ペイロード要素
要求の本体には、以下のスキーマの XML ブロックが含まれている必要があります。
エレメント | タイプ | 子 | 上位 | 注記 |
---|---|---|---|---|
PublicAccessBlockConfiguration | コンテナー | BlockPublicAcls, IgnorePublicAcls |
|
必須 |
BlockPublicAcls | ブール値 |
|
PublicAccessBlockConfiguration |
|
IgnorePublicAcls | ブール値 |
|
PublicAccessBlockConfiguration |
|
要求の例
PUT /apiary?publicAccessBlock HTTP/1.1
Authorization: Bearer {token}
Host: s3.us.cloud-object-storage.appdomain.cloud
Content-Length: 155
PUT /apiary?publicAccessBlock HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
Host: s3.us.cloud-object-storage.appdomain.cloud
Content-Length: 155
<PublicAccessBlockConfiguration>
<BlockPublicAcls>True</BlockPublicAcls>
<IgnorePublicAcls>True</IgnorePublicAcls>
</PublicAccessBlockConfiguration>
応答の例
HTTP/1.1 200 OK
Date: Mon, 02 Nov 2020 15:39:38 GMT
X-Clv-Request-Id: 7afca6d8-e209-4519-8f2c-1af3f1540b42
Accept-Ranges: bytes
Content-Length: 0
バケットのパブリック ACL ブロックの検査
適切なパラメーターを指定してバケットに対して発行された GET
は、バケットの ACL ブロック構成を返します。
構文
GET https://{endpoint}/{bucket-name}?publicAccessBlock # path style
GET https://{bucket-name}.{endpoint}?publicAccessBlock # virtual host style
要求の例
以下の例では、バケットのパブリック・アクセス・ブロックを読み取ります。
GET /apiary?publicAccessBlock HTTP/1.1
Authorization: Bearer {token}
Host: s3.us.cloud-object-storage.appdomain.cloud
要求の例
GET /apiary?publicAccessBlock HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
HTTP/1.1 200 OK
Date: Mon, 02 Nov 2020 19:52:56 GMT
X-Clv-Request-Id: 7c9079b1-2833-4abc-ba10-466ef06725b2
Server: Cleversafe/3.15.2.31
X-Clv-S3-Version: 2.5
Accept-Ranges: bytes
Content-Type: application/xml
Content-Length: 248
<PublicAccessBlockConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<BlockPublicAcls>true</BlockPublicAcls>
<IgnorePublicAcls>true</IgnorePublicAcls>
</PublicAccessBlockConfiguration>
バケットからパブリック ACL ブロックを削除します
適切なパラメーターを指定してバケットに対して発行された DELETE
は、バケットからパブリック ACL ブロックを削除します。
Satellite 環境では、すべての操作がサポートされているわけではありません。 詳しくは、 サポートされる Satellite API を参照してください。
構文
DELETE https://{endpoint}/{bucket-name}?publicAccessBlock # path style
DELETE https://{bucket-name}.{endpoint}?publicAccessBlock # virtual host style
要求の例
以下の例では、バケットの ACL ブロックを削除します。
DELETE /apiary?publicAccessBlock HTTP/1.1
Authorization: Bearer {token}
Host: s3.us.cloud-object-storage.appdomain.cloud
要求の例
DELETE /apiary?publicAccessBlock HTTP/1.1
Authorization: 'AWS4-HMAC-SHA256 Credential={access-key}/{date}/{region}/s3/aws4_request,SignedHeaders=host;x-amz-date;,Signature={signature}'
x-amz-date: {timestamp}
Content-Type: text/plain
Host: s3.us.cloud-object-storage.appdomain.cloud
サーバーは 204 No Content
と応答します。
PUT バケット・インベントリーの構成
適切なパラメーターを指定してバケットに対して発行された PutBucketInventoryConfiguration
。
構文
PUT {bucket}?inventory&id={id}
要求の例
以下の例は、バケットに対する PutBucketInventoryConfiguration
要求です。
要求の例
PUT /mybucket?inventory&id=myid HTTP/1.1
<?xml version="1.0" encoding="UTF-8"?>
<InventoryConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<Id>myid</Id>
<IsEnabled>true</IsEnabled>
<Filter>
<Prefix>my-filter-prefix</Prefix>
</Filter>
<IncludedObjectVersions>Current</IncludedObjectVersions>
<Schedule>
<Frequency>Daily</Frequency>
</Schedule>
<OptionalFields>
<Field>Size</Field>
<Field>LastModifiedDate</Field>
<Field>ETag</Field>
<Field>IsMultipartUploaded</Field>
<Field>EncryptionStatus</Field>
<Field>ObjectOwner</Field>
</OptionalFields>
<Destination>
<S3BucketDestination>
<Bucket>mybucket</Bucket>
<Format>CSV</Format>
<Prefix>my-destination-prefix</Prefix>
</S3BucketDestination>
</Destination>
</InventoryConfiguration>
サーバーは 204 No Content
と応答します。
GET バケット・インベントリーの構成
適切なパラメーターを指定してバケットに対して発行された GetBucketInventoryConfiguration
。
構文
GET {bucket}?inventory&id={id}
要求の例
以下の例は、バケットに対する GetBucketInventoryConfiguration
要求です。
GET mybucket?inventory&id=myid HTTP/1.1
応答の例
<?xml version="1.0" encoding="UTF-8"?>
<InventoryConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<Id>myid</Id>
<IsEnabled>true</IsEnabled>
<Filter>
<Prefix>my-filter-prefix</Prefix>
</Filter>
<IncludedObjectVersions>Current</IncludedObjectVersions>
<Schedule>
<Frequency>Daily</Frequency>
</Schedule>
<OptionalFields>
<Field>Size</Field>
<Field>LastModifiedDate</Field>
<Field>ETag</Field>
<Field>IsMultipartUploaded</Field>
<Field>EncryptionStatus</Field>
<Field>ObjectOwner</Field>
</OptionalFields>
<Destination>
<S3BucketDestination>
<Bucket>mybucket</Bucket>
<Format>CSV</Format>
<Prefix>my-destination-prefix</Prefix>
</S3BucketDestination>
</Destination>
</InventoryConfiguration>
LIST バケット・インベントリーの構成
適切なパラメーターを指定してバケットに対して発行された ListBucketInventoryConfigurations
。
構文
GET {bucket}?inventory&continuation-token={continuation-token}
要求の例
以下は、バケットに対する ListBucketInventoryConfigurations
要求の例です。
GET /mybucket?inventory HTTP/1.1
応答の例
<?xml version="1.0" encoding="UTF-8"?>
<ListInventoryConfigurationsResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
<InventoryConfiguration>
<Id>goodinventoryid</Id>
<IsEnabled>true</IsEnabled>
<Filter>
<Prefix>goodFilterPrefix</Prefix>
</Filter>
<Destination>
<S3BucketDestination>
<Format>CSV</Format>
<Bucket>mybucketCRN</Bucket>
<Prefix>goodPrefix</Prefix>
</S3BucketDestination>
</Destination>
<Schedule>
<Frequency>Daily</Frequency>
</Schedule>
<IncludedObjectVersions>All</IncludedObjectVersions>
<OptionalFields>
<Field>Size</Field>
</OptionalFields>
</InventoryConfiguration>
<InventoryConfiguration>
<Id>goodinventoryid1</Id>
...
</InventoryConfiguration>
<IsTruncated>true</IsTruncated>
<NextContinuationToken>{continuation-token}</NextContinuationToken>
</ListInventoryConfigurationsResult>
DELETE バケット・インベントリーの構成
適切なパラメーターを指定してバケットに対して発行された DeleteBucketInventoryConfiguration
。
構文
DELETE {bucket}?inventory&id={id}
要求の例
以下の例は、バケットに対する DeleteBucketInventoryConfiguration
要求です。
DELETE mybucket?inventory&id=myid HTTP/1.1
応答の例
204 No Content
バックアップ・ポリシーの操作
IBM Cloud® Object Storage Backup Policy API は、バックアップ・ポリシーの作成、管理、操作のためのオペレーションを提供します。 バックアップ・ポリシーは、バケット内のデータをどのようにバックアップ保管庫にバックアップするかを定義する。
権限とアクセスの詳細については、 バックアップ・ポリシーの権限を 参照してください。
バックアップ・ポリシーを作成します
/buckets/{bucket}/backup_policies
エンドポイントへの POST
リクエストは、バケットの新しいバックアップポリシーを作成する。
ヘッダー | タイプ | 必須かどうか | 説明 |
---|---|---|---|
MD5 |
ストリング | いいえ | MD5 コンテンツのハッシュ。 提供された場合、リクエストのハッシュは一致しなければならない。 |
パスパラメータ | タイプ | 必須かどうか | 説明 |
---|---|---|---|
bucket_name |
ストリング | ある | バックアップポリシーが適用されるバケットの名前。 |
構文
POST https://{endpoint}/buckets/{bucket}/backup_policies
要求本文
{
"policy_name": "myBackupPolicy",
"initial_retention": {
"delete_after_days": 10
},
"backup_type": "continuous",
"target_backup_vault_crn": "crn:v1:bluemix:public:cloud-object-storage:global:a1229395:1a0ec336-f391-4091-a6fb-5e084a4c56f4:backup-vault:backup-vault-name"
}
要求の例
POST /buckets/myBucket/backup_policies HTTP/1.1
Authorization: Bearer {token}
Content-Type: application/json
Host: config.cloud-object-storage.cloud.ibm.com
{
"initial_retention": {
"delete_after_days": 10
},
"policy_name": "myBackupPolicy",
"target_backup_vault_crn": "crn:v1:bluemix:public:cloud-object-storage:global:2de9d5b5:12b951c9-d4e1-61a4-518c-3acc2034ba30:backup-vault:l4pi16n8rt--ufqb7.r-fw2ziy",
"backup_type": "continuous"
}
応答の例
{
"policy_name": "myBackupPolicy",
"initial_retention": {
"delete_after_days": 10
},
"backup_type": "continuous",
"policy_id": "44d3dd41-d616-4d25-911a-9ef7fbf28aef",
"policy_status": "pending",
"target_backup_vault_crn": "crn:v1:bluemix:public:cloud-object-storage:global:a1229395:1a0ec336-f391-4091-a6fb-5e084a4c56f4:backup-vault:backup-vault-name"
}
バックアップ・ポリシー一覧
/buckets/{bucket}/backup_policies
エンドポイントへの GET
リクエストは、バケットのすべてのバックアップポリシーを検索します。
パスパラメータ | タイプ | 必須かどうか | 説明 |
---|---|---|---|
bucket_name |
ストリング | ある | バックアップポリシーを一覧表示するバケットの名前。 |
構文
GET https://{endpoint}/buckets/{bucket}/backup_policies
要求の例
GET /buckets/myBucket/backup_policies HTTP/1.1
Authorization: Bearer {token}
Content-Type: application/json
Host: config.cloud-object-storage.cloud.ibm.com
応答の例
[
{
"policy_name": "myBackupPolicy",
"initial_retention": {
"delete_after_days": 10
},
"backup_type": "continuous",
"policy_id": "44d3dd41-d616-4d25-911a-9ef7fbf28aef",
"policy_status": "active",
"target_backup_vault_crn": "crn:v1:bluemix:public:cloud-object-storage:global:a1229395:8dfbcba4e6a740e3866020847e525436:backup-vault:backup-vault-name"
}
]
バックアップ・ポリシーの詳細を取得する
/buckets/{bucket}/backup_policies/{policy_id}
エンドポイントへの GET
リクエストは、特定のバックアップ・ポリシーの詳細を取得する。
パスパラメータ | タイプ | 必須かどうか | 説明 |
---|---|---|---|
bucket_name |
ストリング | ある | バケットの名前。 |
policy_id |
ストリング | ある | バックアップポリシーのID。 |
構文
GET https://{endpoint}/buckets/{bucket}/backup_policies/{policy_id}
要求の例
GET /buckets/myBucket/backup_policies/44d3dd41-d616-4d25-911a-9ef7fbf28aef HTTP/1.1
Authorization: Bearer {token}
Content-Type: application/json
Host: config.cloud-object-storage.cloud.ibm.com
応答の例
{
"policy_name": "myBackupPolicy",
"backup_type": "continuous",
"policy_id": "44d3dd41-d616-4d25-911a-9ef7fbf28aef",
"policy_status": "active",
"target_backup_vault_crn": "crn:v1:bluemix:public:cloud-object-storage:global:a1229395:1a0ec336-f391-4091-a6fb-5e084a4c56f4:backup-vault:backup-vault-name",
"initial_retention": {
"delete_after_days": 10
}
}
バックアップポリシーの削除
/buckets/{bucket}/backup_policies/{policy_id}
エンドポイントへの DELETE
リクエストは、特定のバックアップ・ポリシーを削除する。
パスパラメータ | タイプ | 必須かどうか | 説明 |
---|---|---|---|
bucket_name |
ストリング | ある | バケットの名前。 |
policy_id |
ストリング | ある | バックアップポリシーのID。 |
構文
DELETE https://{endpoint}/buckets/{bucket}/backup_policies/{policy_id}
要求の例
DELETE /buckets/myBucket/backup_policies/44d3dd41-d616-4d25-911a-9ef7fbf28aef HTTP/1.1
Authorization: Bearer {token}
Content-Type: application/json
Host: config.cloud-object-storage.cloud.ibm.com
応答の例
HTTP/1.1 204 No Content
バックアップ・ポリシーの操作の詳細については、 バックアップ保管庫 管理を参照してください。
次のステップ
詳しくは、 オブジェクト操作 を参照してください。