バケット操作

IBM Cloud® Object Storage の現代的な機能は、RESTful APIを通じて便利に利用できます。 ここでは、バケット (オブジェクトが保管されている場所) と対話するために使用される操作およびメソッドについて説明します。

許可とアクセス権限について詳しくは、 バケットの許可 を参照してください。

アクセス/秘密鍵 (HMAC) 認証に関する注記

HMAC 資格情報を使用して IBM Cloud® Object Storage のインスタンスに対して認証を行う場合は、 HMAC 署名の構成 時に表 1 に示されている情報が必要です。

HMAC署名コンポーネント
キー
{access_key} サービス認証情報に割り当てられているアクセスキー cf4965cebe074720a4929759f57e1214
{date} 要求のフォーマット設定された日付 (yyyymmdd) 20180613
{region} エンドポイントのロケーション・コード us-standard
{signature} 秘密鍵、ロケーション、および日付を使用して作成されたハッシュ ffe2b6e18f9dcc41f593f4dbb39882a6bb4d26a73a04326e62a8d344e07c1a3e
{timestamp} 要求のフォーマット設定された日時 20180614T001804Z

バケットのリスト

エンドポイントのルートに送信された GET リクエストは、指定されたサービスインスタンスに関連付けられているバケットのリストを返します。 エンドポイントについて詳しくは、エンドポイントおよびストレージ・ロケーションを参照してください。

ヘッダー
ヘッダー タイプ 必須かどうか 説明
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- はシステムで予約済みであるため、これらの接頭部で始まる名前のバケットを作成することはできません。

ヘッダー
ヘッダー タイプ 必須かどうか 説明
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

異なるストレージ・クラスを使用するバケットの作成

別のストレージクラスを持つバケットを作成するには、バケットエンドポイントに対して PUT リクエストの本文に、 LocationConstraint{provisioning code} となるバケット構成を指定したXMLブロックを送信します。 エンドポイントについて詳しくは、エンドポイントおよびストレージ・ロケーションを参照してください。 標準バケットの 命名ルール が適用されます。 この操作では、操作固有の照会パラメーターは使用されません。

| | ヘッダー | タイプ | 説明 | |--------------------------|--------|--------------------------------------------------------------------------------------------------------------------- | 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について詳しくは、 資料 を参照してください。

クロスリージョン バケットのマネージド暗号化では、最も 近い高可用性ロケーションus-south または jp-tok)にある Key Protect インスタンスのルートキーを使用する必要があります

ヘッダー
ヘッダー タイプ 説明
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 のみです。

構文

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件までで、辞書順とは異なる順序で返されます。 Object Storage ではストレージクラスの操作が実装されていないため、レスポンスで返される StorageClass の値はデフォルト値となります。 この操作では、操作固有のヘッダーやペイロード・エレメントは使用されません。

構文

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 ストリング prefixdelimiter との間のオブジェクトをグループ化します。
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>
    <ChecksumAlgorithm>CRC64NVME</ChecksumAlgorithm>
    <ChecksumType>FULL_OBJECT</ChecksumType>
    <Size>4</Size>
    <StorageClass>STANDARD</StorageClass>
  </Contents>
  <Contents>
    <Key>soldier-bee</Key>
    <LastModified>2016-08-25T17:49:06.006Z</LastModified>
    <ETag>"37d4c94839ee181a2224d6242176c4b5"</ETag>
    <ChecksumAlgorithm>CRC64NVME</ChecksumAlgorithm>
    <ChecksumType>FULL_OBJECT</ChecksumType>
    <Size>11</Size>
    <StorageClass>STANDARD</StorageClass>
  </Contents>
  <Contents>
    <Key>worker-bee</Key>
    <LastModified>2016-08-25T17:46:53.288Z</LastModified>
    <ETag>"d34d8aada2996fc42e6948b926513907"</ETag>
    <ChecksumAlgorithm>CRC64NVME</ChecksumAlgorithm>
    <ChecksumType>FULL_OBJECT</ChecksumType>
    <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>
    <ChecksumAlgorithm>CRC64NVME</ChecksumAlgorithm>
    <ChecksumType>FULL_OBJECT</ChecksumType>
    <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}

リクエスト例(continuation-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>
    <ChecksumAlgorithm>CRC64NVME</ChecksumAlgorithm>
    <ChecksumType>FULL_OBJECT</ChecksumType>
    <Size>11</Size>
    <StorageClass>STANDARD</StorageClass>
  </Contents>
</ListBucketResult>

特定のバケット内のオブジェクトを一覧表示する(非推奨)

この API は、以前のバージョンとの互換性のために組み込まれています。 バケット内のオブジェクトを取得するための推奨される方法については、バージョン 2 を参照してください。

バケットに対して発行された GET リクエストは、オブジェクトのリストを返します。一度に返されるオブジェクト数は1,000件までで、辞書順とは異なる順序で返されます。 Object Storage ではストレージクラスの操作が実装されていないため、レスポンスで返される StorageClass の値はデフォルト値となります。 この操作では、操作固有のヘッダーやペイロード・エレメントは使用されません。

構文

GET https://{endpoint}/{bucket-name} # path style
GET https://{bucket-name}.{endpoint} # virtual host style

list object メソッドのオプションの照会パラメーター

オプションの照会パラメーター
名前 タイプ 説明
prefix ストリング prefix で始まるオブジェクト名に対する応答に制限します。
delimiter ストリング prefixdelimiter との間のオブジェクトをグループ化します。
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>
    <ChecksumAlgorithm>CRC64NVME</ChecksumAlgorithm>
    <ChecksumType>FULL_OBJECT</ChecksumType>
    <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>
    <ChecksumAlgorithm>CRC64NVME</ChecksumAlgorithm>
    <ChecksumType>FULL_OBJECT</ChecksumType>
    <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>
    <ChecksumAlgorithm>CRC64NVME</ChecksumAlgorithm>
    <ChecksumType>FULL_OBJECT</ChecksumType>
    <Size>467</Size>
    <Owner>
      <ID>{account-id}</ID>
      <DisplayName>{account-id}</DisplayName>
    </Owner>
    <StorageClass>STANDARD</StorageClass>
  </Contents>
</ListBucketResult>

バケットの削除

空のバケットに対して発行された DELETE リクエストは、そのバケットを削除します。 バケット名は削除後5分間、システムによって保留状態に保持されます。 5分後、その名前は再利用可能になります。 削除できるのは空のバケットのみです。

Object Storage サービス・インスタンスが削除されると、そのインスタンス内のすべてのバケット名がシステムによって 7 日間保持されます。 7 日後、名前は再利用のためにリリースされます。

構文

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>

既存のバケットに対するオブジェクト・ロックの構成

?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 ハッシュ値をエンコードしたもので、これは転送中にペイロードが改ざんされていないことを確認するための整合性チェックとして使用されます。
x-amz-checksum-crc32 ストリング このヘッダーは、 Base64 エンコードされた、オブジェクトの32ビット CRC32 チェックサムである。
x-amz-checksum-crc32c ストリング このヘッダーは、 Base64 エンコードされた、オブジェクトの32ビット CRC32C チェックサムである。
x-amz-checksum-crc64nvme ストリング このヘッダーは、 Base64 エンコードされた、オブジェクトの64ビット CRC64NVME チェックサムである。 CRC64NVME チェックサムは常にフルオブジェクトチェックサムである。
x-amz-checksum-sha1 ストリング このヘッダーは、 Base64 エンコードされた、オブジェクトの160ビット SHA1 ダイジェストである。
x-amz-checksum-sha256 ストリング このヘッダーは、 Base64 エンコードされた、オブジェクトの256ビット SHA256 ダイジェストである。
x-amz-sdk-checksum-algorithm ストリング SDKを使用する際に、オブジェクトのチェックサムを作成するために使用されるアルゴリズムを示します。

ペイロードの完全性チェックとして、 Content-MD5 ヘッダーまたは checksum ヘッダー( x-amz-checksum-crc32x-amz-checksum-crc32cx-amz-checksum-crc64nvmex-amz-checksum-sha1、または x-amz-checksum-sha256 を含む)が必要である。

要求の本体には、以下のスキーマの XML ブロックが含まれている必要があります。

リクエスト・スキーマ本体
エレメント タイプ 上位 制約
ObjectLockConfiguration コンテナー ObjectLockEnabled, Rule なし 限度 1。
ObjectLockEnabled ストリング なし ObjectLockConfiguration 有効な値は「 ENABLED 」のみです。
Rule コンテナー DefaultRetention ObjectLockConfiguration 限度 1
DefaultRetention コンテナー Days, Mode, Years Rule 限度 1。
Days 整数 なし DefaultRetention デフォルトの保存期間に指定する日数です。 Years と組み合わせることはできません。
Mode ストリング なし DefaultRetention COMPLIANCEまたはGOVERNANCE
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 は、バケットのキャンセル済みまたは未完了のマルチパート・アップロードに関する情報を取得します。

構文

GET https://{endpoint}/{bucket-name}?uploads= # path style
GET https://{bucket-name}.{endpoint}?uploads= # virtual host style

パラメーター

パラメーター
名前 タイプ 説明
prefix ストリング {prefix} で始まるオブジェクト名に対する応答に制限します。
delimiter ストリング prefixdelimiter との間のオブジェクトをグループ化します。
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) 構成に関する情報を取得します。

構文

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

応答例 No 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) 構成を作成または置換します。

構文

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 は、ペイロードの128ビット MD5 ハッシュ値をエンコードしたもので、これは転送中にペイロードが改ざんされていないことを確認するための整合性チェックとして使用されます。
x-amz-checksum-crc32 ストリング このヘッダーは、 Base64 エンコードされた、オブジェクトの32ビット CRC32 チェックサムである。
x-amz-checksum-crc32c ストリング このヘッダーは、 Base64 エンコードされた、オブジェクトの32ビット CRC32C チェックサムである。
x-amz-checksum-crc64nvme ストリング このヘッダーは、 Base64 エンコードされた、オブジェクトの64ビット CRC64NVME チェックサムである。 CRC64NVME チェックサムは常にフルオブジェクトチェックサムである。
x-amz-checksum-sha1 ストリング このヘッダーは、 Base64 エンコードされた、オブジェクトの160ビット SHA1 ダイジェストである。
x-amz-checksum-sha256 ストリング このヘッダーは、 Base64 エンコードされた、オブジェクトの256ビット SHA256 ダイジェストである。
x-amz-sdk-checksum-algorithm ストリング SDKを使用する際に、オブジェクトのチェックサムを作成するために使用されるアルゴリズムを示します。

ペイロードの完全性チェックとして、 Content-MD5 ヘッダーまたは checksum ヘッダー( x-amz-checksum-crc32x-amz-checksum-crc32cx-amz-checksum-crc64nvmex-amz-checksum-sha1、または x-amz-checksum-sha256 を含む)が必要である。 base64-encoded MD5 ハッシュのバイナリ表現である。以下のスニペットは、 Content-MD5 ヘッダーのコンテンツを実現する一つの方法を示している。

echo -n (XML block) | openssl dgst -md5 -binary | openssl enc -base64

リクエスト例

次の例では、 www.ibm.com からのリクエストが、そのバケットに対して GETPUT、および 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) 構成を作成または置換します。

構文

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 は、バケットのロケーション情報を取得します。

構文

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 ヘッダーまたは checksum ヘッダー( x-amz-checksum-crc32x-amz-checksum-crc32cx-amz-checksum-crc64nvmex-amz-checksum-sha1、または x-amz-checksum-sha256 を含む)が必要である。

base64-encoded MD5 ハッシュのバイナリ表現である。以下のスニペットは、 Content-MD5 ヘッダーのコンテンツを実現する一つの方法を示している。

構文

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-zA-Z0-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形式でなければならず、日付は将来の日付でなければなりません。
StorageClass ストリング なし Transition GLACIER または ACCELERATED に設定する 必要があります
ExpiredObjectDeleteMarker ブール値 なし Expiration true または false のいずれかでなければなりません
NoncurrentVersionExpiration コンテナー NoncurrentDays NoncurrentVersionExpiration 限度 1
NoncurrentDays 正整数 なし Transition 0 より大きい値である必要があります
AbortIncompleteMultipartUpload コンテナー DaysAfterInitiation Rule 限度 1
DaysAfterInitiation 負でない整数 なし AbortIncompleteMultipartUpload 0 より大きい値である必要があります
オプションのヘッダー
ヘッダー タイプ 説明
Content-MD5 ストリング base64 は、ペイロードの128ビット MD5 ハッシュ値をエンコードしたもので、これは転送中にペイロードが改ざんされていないことを確認するための整合性チェックとして使用されます。
x-amz-checksum-crc32 ストリング このヘッダーは、 Base64 エンコードされた、オブジェクトの32ビット CRC32 チェックサムである。
x-amz-checksum-crc32c ストリング このヘッダーは、 Base64 エンコードされた、オブジェクトの32ビット CRC32C チェックサムである。
x-amz-checksum-crc64nvme ストリング このヘッダーは、 Base64 エンコードされた、オブジェクトの64ビット CRC64NVME チェックサムである。 CRC64NVME チェックサムは常にフルオブジェクトチェックサムである。
x-amz-checksum-sha1 ストリング このヘッダーは、 Base64 エンコードされた、オブジェクトの160ビット SHA1 ダイジェストである。
x-amz-checksum-sha256 ストリング このヘッダーは、 Base64 エンコードされた、オブジェクトの256ビット SHA256 ダイジェストである。
x-amz-sdk-checksum-algorithm ストリング SDKを使用する際に、オブジェクトのチェックサムを作成するために使用されるアルゴリズムを示します。

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>

以下のスニペットは、その特定のヘッダーのコンテンツを実現する 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>

以下のスニペットは、その特定のヘッダーのコンテンツを実現する 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>

有効期限ルールを使用した失効データの削除

バケットの不変 Object Storage 保持ポリシーの対象となるオブジェクトに対する期限切れ処理は、保持ポリシーが適用されなくなるまで延期されます。

ライフサイクル構成を使用してオブジェクトを削除する方法について詳しくは、 資料 を参照してください。

PUT 操作のこの実装は、lifecycle 照会パラメーターを使用してバケットのライフサイクル設定を設定します。 この操作では、バケットに対して単一のライフサイクル・ポリシー定義が可能です。 このポリシーは、 IDStatusFilter、および Expiration というパラメータで構成される一連のルールとして定義されています。

オプション・ヘッダー
ヘッダー タイプ 説明
Content-MD5 ストリング Base64 は、ペイロードの128ビット MD5 ハッシュ値をエンコードしたもので、これは転送中にペイロードが改ざんされていないことを確認するための整合性チェックとして使用されます。
x-amz-checksum-crc32 ストリング このヘッダーは、 Base64 エンコードされた、オブジェクトの32ビット CRC32 チェックサムである。
x-amz-checksum-crc32c ストリング このヘッダーは、 Base64 エンコードされた、オブジェクトの32ビット CRC32C チェックサムである。
x-amz-checksum-crc64nvme ストリング このヘッダーは、 Base64 エンコードされた、オブジェクトの64ビット CRC64NVME チェックサムである。 CRC64NVME チェックサムは常にフルオブジェクトチェックサムである。
x-amz-checksum-sha1 ストリング このヘッダーは、 Base64 エンコードされた、オブジェクトの160ビット SHA1 ダイジェストである。
x-amz-checksum-sha256 ストリング このヘッダーは、 Base64 エンコードされた、オブジェクトの256ビット SHA256 ダイジェストである。
x-amz-sdk-checksum-algorithm ストリング SDKを使用する際に、オブジェクトのチェックサムを作成するために使用されるアルゴリズムを示します。

ペイロードの完全性チェックとして、 Content-MD5 ヘッダーまたは checksum ヘッダー( x-amz-checksum-crc32x-amz-checksum-crc32cx-amz-checksum-crc64nvmex-amz-checksum-sha1、または x-amz-checksum-sha256 を含む)が必要である。

base64-encoded MD5 ハッシュのバイナリ表現である。以下のスニペットは、 Content-MD5 ヘッダーのコンテンツを実現する一つの方法を示している。

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-zA-Z0-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 ヘッダーまたは checksum ヘッダー( x-amz-checksum-crc32x-amz-checksum-crc32cx-amz-checksum-crc64nvmex-amz-checksum-sha1、または x-amz-checksum-sha256 を含む)が必要である。 base64-encoded MD5 ハッシュのバイナリ表現である。以下のスニペットは、 Content-MD5 ヘッダーのコンテンツを実現する一つの方法を示している。

ポリシーは保存期間の終了まで適用され、保存期間が満了するまで変更することはできません。 IBM Cloud® Object Storage はほとんどの操作に S3 APIを使用しますが、保持ポリシーの設定に使用されるAPIは S3 APIとは異なります。ただし、一部の用語は共通している場合があります。 組織内のユーザーが、 IBM Cloud 管理者であっても削除できないオブジェクトを作成しないように、このドキュメントを注意深くお読みください。

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 有効な保存整数
オプション・ヘッダー
ヘッダー タイプ 説明
Content-MD5 ストリング base64 は、ペイロードの128ビット MD5 ハッシュ値をエンコードしたもので、これは転送中にペイロードが改ざんされていないことを確認するための整合性チェックとして使用されます。
x-amz-checksum-crc32 ストリング このヘッダーは、 Base64 エンコードされた、オブジェクトの32ビット CRC32 チェックサムである。
x-amz-checksum-crc32c ストリング このヘッダーは、 Base64 エンコードされた、オブジェクトの32ビット CRC32C チェックサムである。
x-amz-checksum-crc64nvme ストリング このヘッダーは、 Base64 エンコードされた、オブジェクトの64ビット CRC64NVME チェックサムである。 CRC64NVME チェックサムは常にフルオブジェクトチェックサムである。
x-amz-checksum-sha1 ストリング このヘッダーは、 Base64 エンコードされた、オブジェクトの160ビット SHA1 ダイジェストである。
x-amz-checksum-sha256 ストリング このヘッダーは、 Base64 エンコードされた、オブジェクトの256ビット SHA256 ダイジェストである。
x-amz-sdk-checksum-algorithm ストリング SDKを使用する際に、オブジェクトのチェックサムを作成するために使用されるアルゴリズムを示します。

リクエスト例

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

静的ウェブサイトのホスティング用にバケットを設定する

適切なパラメータを指定してバケットに対して発行された PUT は、そのバケットの静的ウェブサイトの構成を作成または更新します。

構文

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 サイト構成を削除します。

構文

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 パブリック・アクセス・ポリシーには影響しません。

構文

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 ブロックを削除します。

構文

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 と応答します。


バックアップ・ポリシーの操作

IBM Cloud® Object Storage のバックアップポリシー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

バックアップ・ポリシーの操作の詳細については、 バックアップ保管庫 管理を参照してください。

次のステップ

詳しくは、 オブジェクト操作 を参照してください。