機械翻訳について

3 Object Storage Classicのオブジェクトの管理

このセクションでは、Object Storage Classic内のオブジェクトの管理に関するドキュメントを提供します。

トピック:

オブジェクトを管理するための典型的なワークフロー

次の表をオブジェクト管理のワークフローのガイドとして使用します。 まだサービスをサブスクライブしていない、または設定していない場合は、「Oracle Cloud Infrastructure Object Storage Classicスタート・ガイド・ワークフロー」を参照してください。

タスク 説明 詳細情報

サービスへのアクセス

REST APIを介してサービスにアクセスします。

他のインタフェースを使用してサービスにアクセスする方法について詳しくは、「Object Storage Classicへのインタフェース」を参照してください。

Object Storage Classicへのアクセス

認証トークンの生成

REST APIインタフェースを介してサービスにアクセスしている場合は、認証トークンを生成します。 Javaライブラリを介してサービスにアクセスしている場合、認証トークンは自動的に生成、適用されます。

REST API使用時のアクセスの認証

コンテナのリスト

アカウント内のコンテナをリストします。

コンテナのリスト

コンテナ内のオブジェクトのリスト

指定したコンテナ内のオブジェクトをリストします。

コンテナのオブジェクトのリスト

オブジェクトの作成

単一オブジェクトの作成、オブジェクトの一括作成、5GBを超えるファイルのアップロードを行います。

単一オブジェクトの作成

オブジェクトのメタデータを取得

コンテナ内のオブジェクトに関する情報を取得します。

オブジェクト・メタデータの取得

アーカイブされたオブジェクトをリストア

アーカイブ済オブジェクトをダウンロードするには、最初にオブジェクトをリストアする必要があります。

アーカイブ済オブジェクトのリストア

オブジェクトのダウンロード

オブジェクトのメタデータとデータをダウンロードします。

オブジェクトのダウンロード

オブジェクトの削除

オブジェクトを削除および一括削除します。

オブジェクトの削除

オブジェクト・メタデータの更新

カスタム・メタデータおよび特殊なメタデータを更新します。

オブジェクト・メタデータの更新

オブジェクトのコピー

オブジェクトを別のオブジェクトにコピーします。

オブジェクトのコピー

オブジェクトの暗号化

アップロードの前にオブジェクトをJavaライブラリで透過的に暗号化します。

オブジェクトの暗号化

Object Storage Classicのオブジェクトの管理に必要なロール

ストレージ管理者ロールを持つユーザーは、サービス・インスタンスのすべてのコンテナおよびオブジェクトを作成、読取り、更新および削除できます。

  • コンテナおよびオブジェクトが変更される原因となるタスクでは、関連付けられたコンテナのX-Container-Writeアクセス制御リスト(ACL)にStorage_ReadWriteGroupロールまたはカスタム・ロールが必要です。
  • コンテナおよびオブジェクトが変更されないタスクには、Storage_ReadOnlyGroupロールまたは関連コンテナのX-Container-Read ACLのカスタム・ロールが必要です。

ロールとACLの詳細については、Oracle Cloud Infrastructure Object Storage Classicのロールとユーザーについて」を参照してください。

コンテナのオブジェクトのリスト

コンテナ内のすべてのオブジェクトをリストできます。

サービス管理者ロールまたはコンテナのX-Container-Read ACLに指定されたロールを持つすべてのユーザーがこのタスクを実行できます。

コンテナ内のオブジェクトをリストするには、次のインタフェースを使用します。
インタフェース 資料

Webコンソール

(Oracle Cloud at Customerでは使用できません)
Webコンソールを使用したコンテナ内のオブジェクトの一覧表示を参照してください。

RESTful API

Oracle Cloud Infrastructure Object Storage Classicの標準ストレージ用のREST API「コンテナの詳細とリスト・オブジェクトを表示」を参照してください。

Javaライブラリ

Oracle Cloud Infrastructure Object Storage ClassicのJava APIリファレンスlistObjectsを参照してください。

ファイル転送マネージャAPI

Oracle Cloud Infrastructure Object Storage Classic用のJava APIリファレンスFile Transfer Manager」listObjectsを参照してください。

ファイル転送マネージャCLI

Oracle Cloud Infrastructure Object Storage Classicのコマンドライン・リファレンス」「オブジェクトのリスト表示」を参照してください。

Webコンソールを使用したコンテナ内のオブジェクトの一覧表示

(Oracle Cloud at Customerでは使用できません)
  1. Oracle Cloud Infrastructure Object Storage Classicコンソールにサインインします。

    コンテナのリストが表示されます。

  2. オブジェクトをリストするコンテナを選択します。

    コンテナ内のオブジェクトがリストされます。

REST APIを使用したコンテナ内のオブジェクトの一覧表示

オブジェクトは、memcmp()を使用して名前の辞書順にソートされます。 次のパラメータのいずれかを使用してリストをフィルタしないかぎり、すべてのオブジェクト(デフォルトでは、10000個まで)がリストに戻されます。

  • limit: リストされるオブジェクトの数を、指定値に限定します。 デフォルトおよび最大値は、10000です。
  • marker: 指定された文字列より大きい名前のオブジェクトを返します。
  • end_marker: 指定された文字列より小さい名前のオブジェクトを返します。
  • format: 返される各オブジェクトに関する拡張情報をxmlまたはjson形式で返します(REST APIのみ)。
  • prefix: 指定された文字列で始まる名前のオブジェクトを返します。
  • delimiter: 指定された文字を名前に含むオブジェクトを返します。 指定された文字より前のオブジェクト名のサブ文字列のみ返されます。 一意のサブ文字列のみ返されます。
    • prefixパラメータも使用した場合、指定されたデリミタ文字との一致は無視されます。
    • コンテナでディレクトリ構造をエミュレートするために使用されます(つまり、スラッシュ(/)をデリミタとして使用します)。

cURLコマンド構文

curl -v -X GET \
     -H "X-Auth-Token: token" \
     accountURL/containerName[?query_parameter=value]

注意:

Oracle Cloud Infrastructure Object Storage ClassicにREST APIリクエストを送信すると、コンテナ名、オブジェクト名、メタデータ値の非ASCII文字はすべてURLエンコードされている必要があります。 たとえば、my containermy%20containerとしてエンコードする必要があります。%20はスペース文字のHTMLエンコードです。 同様に、my Über Containermy%20%C3%9Cber%20Containerとしてエンコードする必要があります。%20はスペース文字を表し、%C3%9CÜ文字です。

HTTPレスポンス・コード

cURLコマンド例

次の詳細を含むサンプルCloudアカウント:
  • アカウント名: acme
  • RESTエンドポイントURL : https://acme.storage.oraclecloud.com/v1/Storage-acme
  • RESTエンドポイント(永続)URL : https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365

    注意:

    2017年11月以降に作成されたアカウントのREST Endpoint (Permanent)URLが表示されます。
  • 「RESTエンドポイント」フィールドから取得したRESTエンドポイントURLを使用する方法:
    curl -v -X GET \
         -H "X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b" \
         https://acme.storage.oraclecloud.com/v1/Storage-acme/myContainer?limit=15
    

    注意:

    この例のアカウントのURLはhttps://acme.storage.oraclecloud.com/v1/Storage-acmeです。 このURLをアカウントのURLと置換してください。 アカウントURLを見つけるステップについては、「Oracle Cloud Infrastructure Object Storage ClassicリソースのREST URLについて」を参照してください。

    次に、このコマンドの出力例を示します:

    > GET /v1/Storage-acme/FirstContainer HTTP/1.1
    > User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.14.0.0 zlib/1.2.3 libidn/1.18 libssh2/1.4.2
    > Host: acme.storage.oraclecloud.com
    > Accept: */*
    > X-Auth-Token: AUTH_tk4af5123f84d2e3ffb9e77ba657ac8edf
    >
    < HTTP/1.1 200 OK
    < Date: Mon, 09 Mar 2015 11:15:50 GMT
    < Content-Length: 63
    < X-Container-Object-Count: 4
    < X-Container-Write: myIdentityDomainID.Storage.Storage_ReadWriteGroup
    < Accept-Ranges: bytes
    < X-Timestamp: 1425033529.95392
    < X-Container-Read: myIdentityDomainID.Storage.Storage_ReadOnlyGroup,myIdentityDomainID.Storage.Storage_ReadWriteGroup
    < X-Container-Bytes-Used: 92095
    < Content-Type: text/plain; charset=utf-8
    < X-Trans-Id: tx23ba568df8864b45bc443-0054fd80e6
    < Cache-Control: no-cache
    < Pragma: no-cache
    < Content-Language: en
    <
    Backup-2-0_24680
    Backup-3-0_32872
    MetadataLog-0_32872
    test.key
    
  • 「RESTエンドポイント(永続的)」フィールドから取得したサービス永続RESTエンドポイントURLの使用:

    注意:

    このcURLコマンドの例は、2017年11月以降に作成されたアカウントに適用されます。
    curl -v -X GET \
         -H "X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b" \
         https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365/myContainer?limit=15
    

    注意:

    この例のアカウントのURLはhttps://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365です。 このURLをアカウントのURLと置換してください。 アカウントURLを見つけるステップについては、「Oracle Cloud Infrastructure Object Storage ClassicリソースのREST URLについて」を参照してください。

    次に、このコマンドの出力例を示します:

    > GET /v1/Storage-7b16fede61e1417ab83eb52e06f0e365/FirstContainer HTTP/1.1
    > User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.14.0.0 zlib/1.2.3 libidn/1.18 libssh2/1.4.2
    > Host: storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com
    > Accept: */*
    > X-Auth-Token: AUTH_tk4af5123f84d2e3ffb9e77ba657ac8edf
    >
    < HTTP/1.1 200 OK
    < Date: Mon, 09 Mar 2015 11:15:50 GMT
    < Content-Length: 63
    < X-Container-Object-Count: 4
    < X-Container-Write: myIdentityDomainID.Storage.Storage_ReadWriteGroup
    < Accept-Ranges: bytes
    < X-Timestamp: 1425033529.95392
    < X-Container-Read: myIdentityDomainID.Storage.Storage_ReadOnlyGroup,myIdentityDomainID.Storage.Storage_ReadWriteGroup
    < X-Container-Bytes-Used: 92095
    < Content-Type: text/plain; charset=utf-8
    < X-Trans-Id: tx23ba568df8864b45bc443-0054fd80e6
    < Cache-Control: no-cache
    < Pragma: no-cache
    < Content-Language: en
    <
    Backup-2-0_24680
    Backup-3-0_32872
    MetadataLog-0_32872
    test.key
    

オブジェクトの作成

オブジェクトは1つのコンテナ内に作成する必要があります。 単一のオブジェクトを作成したり、複数のオブジェクトをコンテナにアップロードしたりすることができます。

単一オブジェクトの作成

オブジェクトは1つのコンテナ内に作成する必要があります。 オブジェクトは、ファイルのアップロードまたはメタデータの指定、あるいはその両方によって作成できます。

サービス管理者ロールまたはコンテナのX-Container-Write ACLに指定されたロールを持つすべてのユーザーがこのタスクを実行できます。 オブジェクトは、standardコンテナ内またはarchiveコンテナ内に作成できます。

コンテナにオブジェクトを作成するには、次のインタフェースを使用します。
インタフェース 資料

Webコンソール

(Oracle Cloud at Customerでは使用できません)

Webコンソールを使用した単一オブジェクトの作成を参照してください。

RESTful API

参照先

Javaライブラリ

Oracle Cloud Infrastructure Object Storage ClassicのJava APIリファレンス」storeObjectを参照してください。

ファイル転送マネージャAPI

Oracle Cloud Infrastructure Object Storage Classic用Java APIリファレンスFile Transfer Manager」uploadを参照してください。

ファイル転送マネージャCLI

Oracle Cloud Infrastructure Object Storage Classicのコマンドライン・リファレンス」「オブジェクトのアップロード」を参照してください。

単一の操作で複数のオブジェクトをアップロードするステップは、「単一操作での複数のオブジェクトのアップロード」を参照してください。

Webコンソールを使用した単一オブジェクトの作成

(Oracle Cloud at Customerでは使用できません)
  1. Oracle Cloud Infrastructure Object Storage Classicコンソールにサインインします。
  2. オブジェクトをアップロードするコンテナを選択します。
  3. 「Container Information」ペインで「Enable Upload and Download」を選択します。

    次のメッセージが表示されます。

    In order to upload and download objects to the current container, this application must enable Cross-Origin Resource Sharing (CORS) for this domain domainName.
    You can disable this setting at anytime. 
    Would you like to continue?
  4. 「OK」をクリックして、CORS (Cross-Origin Resource Sharing)を有効にします。

    「Upload Objects」ボタンが有効になります。

    注意:

    CORSはコンテナでいつでも無効にできます。 「Container Information」ペインで「Disable Upload and Download」を選択して、CORSを無効にします。 CORSが無効にされている場合は、コンテナにオブジェクトをアップロードできません。
  5. 「Upload Objects」をクリックして、アップロードするオブジェクトを選択します。

    注意:

    オブジェクト名が「文字の制限」に記載されている入力制限に準拠していることを確認してください。

    オブジェクトのアップロードの進捗状況およびステータスが表示されます。

    オブジェクトがアップロードされると、オブジェクトの詳細(「Last Modified」および「Size」)が表示されます。

REST APIを使用した単一オブジェクトの作成

cURLコマンド構文

curl -v -X PUT \
     -H "X-Auth-Token: token" \
     -T file \
     accountURL/containerName/objectName

注意:

Oracle Cloud Infrastructure Object Storage ClassicにREST APIリクエストを送信すると、コンテナ名、オブジェクト名、メタデータ値の非ASCII文字はすべてURLエンコードされている必要があります。 たとえば、my containermy%20containerとしてエンコードする必要があります。%20はスペース文字のHTMLエンコードです。 同様に、my Über Containermy%20%C3%9Cber%20Containerとしてエンコードする必要があります。%20はスペース文字を表し、%C3%9CÜ文字です。

オブジェクトの自動削除をスケジューリングするには、X-Delete-AfterまたはX-Delete-Atヘッダーを含めます。 「オブジェクト自動削除のスケジューリング」を参照してください。

HTTPレスポンス・コード

cURLコマンド例

次の詳細を含むサンプルCloudアカウント:
  • アカウント名: acme
  • RESTエンドポイントURL : https://acme.storage.oraclecloud.com/v1/Storage-acme
  • RESTエンドポイント(永続)URL : https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365

    注意:

    2017年11月以降に作成されたアカウントのREST Endpoint (Permanent)URLが表示されます。
  • 「RESTエンドポイント」フィールドから取得したRESTエンドポイントURLを使用する方法:
    curl -v -X PUT \
         -H "X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b" \
         -T myFile.txt \
         https://acme.storage.oraclecloud.com/v1/Storage-acme/FirstContainer/myObject
    

    次に、このコマンドの出力例を示します:

    > PUT /v1/Storage-acme/FirstContainer/myObject HTTP/1.1
    > User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.14.0.0 zlib/1.2.3 libidn/1.18 libssh2/1.4.2
    > Host: acme.storage.oraclecloud.com
    > Accept: */*
    > X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b
    > Content-Length: 23
    > Expect: 100-continue
    >
    * Done waiting for 100-continue
    < HTTP/1.1 201 Created
    < Date: Mon, 09 Mar 2015 11:26:57 GMT
    < Last-Modified: Mon, 09 Mar 2015 11:26:58 GMT
    < Content-Length: 0
    < Etag: 846fa9d298be05e5f598703f0c3d6f51
    < Content-Type: text/html; charset=UTF-8
    < X-Trans-Id: tx2a97f34acb7048679ae3b-0054fd8381
    < Cache-Control: no-cache
    < Pragma: no-cache
    < Content-Language: en
    
  • 「RESTエンドポイント(永続的)」フィールドから取得したサービス永続RESTエンドポイントURLの使用:

    注意:

    このcURLコマンドの例は、2017年11月以降に作成されたアカウントに適用されます。
    curl -v -X PUT \
         -H "X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b" \
         -T myFile.txt \
         https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365/FirstContainer/myObject
    

    次に、このコマンドの出力例を示します:

    > PUT /v1/Storage-7b16fede61e1417ab83eb52e06f0e365/FirstContainer/myObject HTTP/1.1
    > User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.14.0.0 zlib/1.2.3 libidn/1.18 libssh2/1.4.2
    > Host: storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com
    > Accept: */*
    > X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b
    > Content-Length: 23
    > Expect: 100-continue
    >
    * Done waiting for 100-continue
    < HTTP/1.1 201 Created
    < Date: Mon, 09 Mar 2015 11:26:57 GMT
    < Last-Modified: Mon, 09 Mar 2015 11:26:58 GMT
    < Content-Length: 0
    < Etag: 846fa9d298be05e5f598703f0c3d6f51
    < Content-Type: text/html; charset=UTF-8
    < X-Trans-Id: tx2a97f34acb7048679ae3b-0054fd8381
    < Cache-Control: no-cache
    < Pragma: no-cache
    < Content-Language: en
    

単一操作での複数のオブジェクトのアップロード

複数のファイルおよびディレクトリを含むアーカイブ・ファイルをアップロードすることで、1回の操作で複数のオブジェクトを作成できます。

注意:

このトピック内のアーカイブという用語は、.tar.tar.gzまたはtar.bz2形式のファイルを意味します。 Archiveストレージ・クラスを意味してはいません。 Archiveコンテナ内のオブジェクトの一括作成はサポートされていません。

サービス管理者ロールまたはコンテナのX-Container-Write ACLに指定されたロールを持つすべてのユーザーがこのタスクを実行できます。

オブジェクトを一括作成するには:

  1. 保存するファイルおよびディレクトリのローカル・アーカイブ(.tar.tar.gzまたはtar.bz2)を作成します。
    • 最上位レベル・ディレクトリはコンテナとして保存され、ネストされたディレクトリはオブジェクト名で表示されます。
    • ファイルはオブジェクトとして保存されます。

    アーカイブ・ファイルの内容の例:

    $ tar -tzf myfiles.tar.gz
    
    bulktest-files/
    bulktest-files/file1.txt
    bulktest-files/file2.txt
    bulktest-files/file3.txt
    
  2. アーカイブをアップロードします。
    • アカウントURLにファイルをアップロードします。 アーカイブ・タイプを?extract-archiveリクエスト・パラメータで指定します。
    • レスポンスは、作成されたファイル数と、エラーがある場合はエラーを示します。

    cURLコマンド例

    次の詳細を含むサンプルCloudアカウント:
    • アカウント名: acme
    • RESTエンドポイントURL : https://acme.storage.oraclecloud.com/v1/Storage-acme
    • RESTエンドポイント(永続)URL : https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365

      注意:

      2017年11月以降に作成されたアカウントのREST Endpoint (Permanent)URLが表示されます。
    • 「RESTエンドポイント」フィールドから取得したRESTエンドポイントURLを使用する方法:
      $ curl -v -X PUT 
             -H "X-Auth-Token: AUTH_tkcc14bdc52d571f70991b68907098f831" \
             "https://acme.storage.oraclecloud.com/v1/Storage-acme/?extract-archive=tar.gz" \
             --data-binary @myfiles.tar.gz
      
      > PUT /v1/Storage-acme/?extract-archive=tar.gz HTTP/1.1
      > Host: acme.storage.oraclecloud.com
      > Accept: */*
      > X-Auth-Token: AUTH_tkcc14bdc52d571f70991b68907098f831
      > Content-Length: 214
      > Content-Type: application/x-www-form-urlencoded
      
      < HTTP/1.1 200 OK
      < Date: Thu, 12 Dec 2013 14:56:18 GMT
      < Content-Type: text/plain
      < Transfer-Encoding: chunked
      
      Number Files Created: 3
      Response Body: 
      Response Status: 201 Created
      

      注意:

      操作の結果は、レスポンス本文(戻されたステータス・コードではなく)を参照してください。
    • 「RESTエンドポイント(永続的)」フィールドから取得したサービス永続RESTエンドポイントURLの使用:

      このcURLコマンドの例は、2017年11月以降に作成されたアカウントに適用されます。

      $ curl -v -X PUT 
             -H "X-Auth-Token: AUTH_tkcc14bdc52d571f70991b68907098f831" \
             "https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365/?extract-archive=tar.gz" \
             --data-binary @myfiles.tar.gz
      
      > PUT /v1/Storage-7b16fede61e1417ab83eb52e06f0e365/?extract-archive=tar.gz HTTP/1.1
      > Host: storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com
      > Accept: */*
      > X-Auth-Token: AUTH_tkcc14bdc52d571f70991b68907098f831
      > Content-Length: 214
      > Content-Type: application/x-www-form-urlencoded
      
      < HTTP/1.1 200 OK
      < Date: Thu, 12 Dec 2013 14:56:18 GMT
      < Content-Type: text/plain
      < Transfer-Encoding: chunked
      
      Number Files Created: 3
      Response Body: 
      Response Status: 201 Created
      

      注意:

      操作の結果は、レスポンス本文(戻されたステータス・コードではなく)を参照してください。
単一の操作で複数のオブジェクトを作成するには、次の各種のインタフェースを使用します。
インタフェース 資料

RESTful API

OpenStack Object Storage Service APIリファレンス一括操作に関する項を参照してください。

ファイル転送マネージャAPI

Oracle Cloud Infrastructure Object Storage Classic用のJava APIリファレンスFile Transfer Manager」uploadMultipleFilesを参照してください。

ファイル転送マネージャCLI

Oracle Cloud Infrastructure Object Storage Classicのコマンドライン・リファレンス」「オブジェクトのアップロード」を参照してください。

ラージ・オブジェクトのアップロード

単一のオブジェクトで最大5GBのデータを保持できますが、複数のオブジェクトをリンクして5GBを超える連続データを保持できます。 小規模オブジェクトをセグメントとして作成し、マニフェスト・オブジェクトを使用して、それらを1つのラージ・オブジェクトとしてアップロードできます。

注意:

ラージ・オブジェクトは、最大2048個のセグメントを持つことができます。 各セグメントは最大5GBになります。 したがって、Oracle Cloud Infrastructure Object Storage Classicにラージ・オブジェクトとしてアップロードできるファイルの最大サイズは10 TBです。

サービス管理者ロールまたはコンテナのX-Container-Write ACLに指定されたロールを持つすべてのユーザーがこのタスクを実行できます。

コンテナへのラージ・オブジェクトのアップロードには、次に示すインタフェースを使用できます。
インタフェース 資料

Webコンソール

(Oracle Cloud at Customerでは使用できません)

「Webコンソールを使用したラージ・オブジェクトのアップロード」を参照してください。

RESTful API

ファイル転送マネージャAPI

Oracle Cloud Infrastructure Object Storage Classic用Java APIリファレンスFile Transfer Manager」uploadを参照してください。

ファイル転送マネージャCLI

Oracle Cloud Infrastructure Object Storage Classicのコマンドライン・リファレンス」「ファイルのアップロード」を参照してください。

Webコンソールを使用したラージ・オブジェクトのアップロード

(Oracle Cloud at Customerでは使用できません)
  1. Oracle Cloud Infrastructure Object Storage Classicコンソールにサインインします。
  2. ラージ・オブジェクトをアップロードするコンテナを選択します。
  3. 「Container Information」ペインで「Enable Upload and Download」を選択します。

    次のメッセージが表示されます。

    In order to upload and download objects to the current container, this application must enable Cross-Origin Resource Sharing (CORS) for this domain domainName.
    You can disable this setting at anytime. 
    Would you like to continue?
  4. 「OK」をクリックして、CORS (Cross-Origin Resource Sharing)を有効にします。

    「ラージ・オブジェクト・アップロード」ボタンが有効になっています。

    注意:

    CORSはコンテナでいつでも無効にできます。 「Container Information」ペインで「Disable Upload and Download」を選択して、CORSを無効にします。 CORSが無効にされている場合は、コンテナにオブジェクトをアップロードできません。
  5. 「ラージ・オブジェクト・アップロード」をクリックして、アップロードするラージ・オブジェクトを選択します。

    すべてのセグメント・オブジェクトのアップロードの進行状況が表示されます。

    アップロードが完了すると、マニフェスト・オブジェクトおよびセグメント・オブジェクトの詳細(「最終変更」および「サイズ」)が表示されます。

REST APIを使用したラージ・オブジェクトのアップロード

ラージ・オブジェクトをアップロードするには:

  1. ラージ・ファイルを、それぞれが5GB未満の複数の順次セグメント・ファイルにローカルにセグメント化します。

    たとえば、Linuxでは、次のコマンドを使用できます。

    split -b 10m file_name segment_name

  2. すべてのセグメント・ファイルをリストします。

    ls -al segment_name*

  3. 各セグメント・ファイルからオブジェクトを作成します。 同じコンテナのすべてのオブジェクトをアップロードします。
    curl -v -X PUT \
            -H "X-Auth-Token:token" \
            -T segmentName \
            accountURL/containerName/objectName
    • tokenは、以前にOracle Cloud Infrastructure Object Storage Classicから取得した認証トークンです。 「REST API使用時のアクセス認証」を参照してください。
    • segmentNameは、アップロードするセグメント・ファイルのフル・パスと名前です。
    • accountURLの構文については、Oracle Cloud Infrastructure Object Storage ClassicリソースのREST URLについて」を参照してください。
    • containerNameは、オブジェクトの作成先コンテナの名前です。
    • objectNameは、作成されるオブジェクトの名前です。 対応するセグメント・ファイル名でオブジェクトに名前を付けたことを確認します。
  4. マニフェスト・ファイルをJSON形式で作成します。各要素には、次の属性が含まれます。
    • path: 次の形式のコンテナとオブジェクト名:

      containerName/segmentObjectName

    • etag: セグメント・オブジェクトのMD5チェックサム。

      セグメント・オブジェクトのEtagヘッダーで値を確認できます。

    • size_bytes: セグメント・オブジェクトのサイズ。

      セグメント・オブジェクトのContent-Lengthヘッダーで値を確認できます。

    マニフェスト・ファイルに、各セグメント・オブジェクトに関するこの3つの属性が含まれていることを確認します。

    マニフェスト・ファイルのサンプル:

    [
        {
            "path": "FirstContainer/segment_aa",
            "etag": "f1c9645dbc14efddc7d8a322685f26eb",
            "size_bytes": 10485760
        },
        {
            "path": "FirstContainer/segment_ab",
            "etag": "f1c9645dbc14efddc7d8a322685f26eb",
            "size_bytes": 10485760
        },
        {
            "path": "FirstContainer/segment_ac",
            "etag": "f1c9645dbc14efddc7d8a322685f26eb",
            "size_bytes": 10485760
        },
        {
            "path": "FirstContainer/segment_ad",
            "etag": "f1c9645dbc14efddc7d8a322685f26eb",
            "size_bytes": 10485760
        },
        
        ...    
        {
            "path": "FirstContainer/segment_aj",
            "etag": "f1c9645dbc14efddc7d8a322685f26eb",
            "size_bytes": 10485760
        }
    ]
  5. 作成したマニフェスト・ファイルをアップロードします。 URIに、問合せパラメータ?multipart-manifest=putを含めます。
    curl -v -X PUT \
            -H "X-Auth-Token:token" \
            "accountURL/containerName/LargeFileName?multipart-manifest=put" \
            -T ./fileName.json
    • LargeFileNameは、ラージ・オブジェクトの名前です。
    • fileName.jsonは、マニフェスト・ファイルの名前です
    • ?multipart-manifest=putは、マニフェスト・ファイルをアップロードするための問合せパラメータです
  6. ラージ・オブジェクトのサイズを確認します。
    curl -v -X HEAD \
            -H "X-Auth-Token:token" \
            accountURL/containerName/LargeObjectName

    ラージ・オブジェクトのサイズは、すべてのセグメント・オブジェクトの合計サイズです。 ラージ・オブジェクトをダウンロードするには、「ラージ・オブジェクトのダウンロード」を参照してください。

例:

次の詳細を含むサンプルCloudアカウント:
  • アカウント名: acme
  • RESTエンドポイントURL : https://acme.storage.oraclecloud.com/v1/Storage-acme
  • RESTエンドポイント(永続)URL : https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365

    注意:

    2017年11月以降に作成されたアカウントのREST Endpoint (Permanent)URLが表示されます。

サンプルのCloudアカウントのRESTエンドポイントURLは、以下のステップで使用されます。 REST Endpoint (Permanent)URLを使用するには、https://acme.storage.oraclecloud.com/v1/Storage-acmehttps://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365に置き換えます。

  1. ラージ・ファイルを、それぞれが5GB未満の複数の順次セグメント・ファイルにローカルにセグメント化します。

    split -b 10m myLargeFile.zip segment_

  2. すべてのセグメント・ファイルをリストします。

    ls -al segment_*

    segment_aa
    segment_ab
    segment_ac
    segment_ad
    segment_ae
    segment_af
    segment_ag
    segment_ah
    segment_ai
    segment_aj
  3. セグメント・ファイル名を維持して、各セグメント・ファイル(segment_aasegment_ab...segment_aj)からオブジェクトを作成します。 同じコンテナFirstContainerのすべてのオブジェクトをアップロードします。 ここで、いずれかのセグメント・ファイルの例を示します。
    curl -v -X PUT \
             -H "X-Auth-Token: AUTH_tk5a58b7a8c34bb7b662523a59a5272650" \
             -T segment_aa 
             https://acme.storage.oraclecloud.com/v1/Storage-acme/FirstContainer/segment_aa

    次に、このコマンドの出力を示します。

    > User-Agent: curl/7.29.0
    > Host: acme.storage.oraclecloud.com
    > Accept: */*
    > X-Auth-Token: AUTH_tkc9305a46ebaa0585c4c7ae063c844f0b
    > Content-Length: 10485760
    > Expect: 100-continue
    >
    < HTTP/1.1 100 Continue
    * We are completely uploaded and fine
    < HTTP/1.1 201 Created
    < Date: Tue, 15 Dec 2015 10:18:26 GMT
    < Last-Modified: Tue, 15 Dec 2015 10:17:21 GMT
    < X-Trans-Id: tx85da332ec5ae4852b7d8c-00566fe8b0ga
    < Etag: f1c9645dbc14efddc7d8a322685f26eb
    < Connection: keep-alive
    < X-Last-Modified-Timestamp: 1450174640.10123
    < Content-Type: text/html;charset=UTF-8
    < Content-Length: 0
    <
    
  4. マニフェスト・ファイルをJSON形式で作成します。

    マニフェスト・ファイルのサンプル:

    [
        {
            "path": "FirstContainer/segment_aa",
            "etag": "f1c9645dbc14efddc7d8a322685f26eb",
            "size_bytes": 10485760
        },
        {
            "path": "FirstContainer/segment_ab",
            "etag": "f1c9645dbc14efddc7d8a322685f26eb",
            "size_bytes": 10485760
        },
        {
            "path": "FirstContainer/segment_ac",
            "etag": "f1c9645dbc14efddc7d8a322685f26eb",
            "size_bytes": 10485760
        },
        {
            "path": "FirstContainer/segment_ad",
            "etag": "f1c9645dbc14efddc7d8a322685f26eb",
            "size_bytes": 10485760
        },
        
        ...    
        {
            "path": "FirstContainer/segment_aj",
            "etag": "f1c9645dbc14efddc7d8a322685f26eb",
            "size_bytes": 10485760
        }
    ]
  5. マニフェスト・ファイルをアップロードします。 問合せパラメータ?multipart-manifest=putを追加して、マニフェスト・ファイルをアップロードします。
    curl -v -X PUT \
            -H "X-Auth-Token: AUTH_tk5a58b7a8c34bb7b662523a59a5272650" 
            "https://acme.storage.oraclecloud.com/v1/Storage-acme/FirstContainer/myLargeFile.manifest?multipart-manifest=put" \
            -T ./manifest.json
    
  6. GETリクエストを送信して、ラージ・オブジェクトをダウンロードします。 すべてのセグメント・オブジェクトが連結され、1つのラージ・オブジェクトとしてダウンロードされます。
    curl -v -X GET \
            -H "X-Auth-Token: AUTH_tk5a58b7a8c34bb7b662523a59a5272650" 
            https://acme.storage.oraclecloud.com/v1/Storage-acme/FirstContainer/myLargeFile.manifest \
            -o ./myLargeFile
    

    GETリクエストを送信してマニフェスト・オブジェクトをダウンロードし、問合せパラメータ?multipart-manifest=getを追加します。

    curl -v -X GET \
            -H "X-Auth-Token: AUTH_tk5a58b7a8c34bb7b662523a59a5272650" 
            "https://acme.storage.oraclecloud.com/v1/Storage-acme/FirstContainer/myLargeFile.manifest?multipart-manifest=get" \
            -o ./manifestFile
  7. HEADリクエストを実行して、作成したラージ・オブジェクト(myLargeFile)のサイズを表示します。
    curl -v -X HEAD \
         -H "X-Auth-Token: AUTH_tkbaebb60dfa5b80d84e62b0d5d07031e5" 
    		 https://acme.storage.oraclecloud.com/v1/Storage-acme/FirstContainer/myLargeFile

    次に、このコマンドの出力を示します。

    > HEAD /v1/Storage-acme/FirstContainer/myLargeFile HTTP/1.1
    > User-Agent: curl/7.29.0
    > Host: acme.storage.oraclecloud.com
    > Accept: */*
    > X-Auth-Token: AUTH_tkc9305a46ebaa0585c4c7ae063c844f0b
    < Etag: "e6da53c20abee5c471fe8bf796abb1a4"
    < Accept-Ranges: bytes
    < Last-Modified: Tue, 15 Dec 2015 10:07:53 GMT
    < X-Timestamp: 1455012472.56679
    < X-Trans-Id: txcab964b91ba8474ca9193-0056b9bb6fga
    < Date: Tue, 15 Dec 2015 10:12:00 GMT
    < Connection: keep-alive
    < X-Last-Modified-Timestamp: 1455012472.56679
    < Content-Type: application/octet-stream;charset=UTF-8
    < Content-Length: 104857600
    curl: (18) transfer closed with 52428800 bytes remaining to read
    

    ラージ・オブジェクトのサイズは、ヘッダーContent-Lengthで確認できます。 ラージ・オブジェクトのサイズは、セグメント・オブジェクトを合計したサイズです。 ラージ・オブジェクトをダウンロードするには、「ラージ・オブジェクトのダウンロード」を参照してください。

オブジェクトを不変にする

WORM (Write-Once-Read-Many)ポリシーをコンテナにアップロードするときにオブジェクトを変更したり、指定した期間削除したりしないようにすることで、オブジェクトを不変にすることができます。

オブジェクトのWORMポリシーを設定したら、それを変更することはできません。 WORMポリシーが期限切れになると、オブジェクトを削除できますが、オブジェクトを変更することはできません。また、メタデータです。 オブジェクトをアップロードするコンテナにWORMポリシーがある場合、オブジェクトレベルのWORMポリシーの期間は、コンテナ・レベルのポリシーの期間以上でなければなりません。 コンテナのWORMポリシーの設定の詳細については、「コンテナ内のオブジェクトを変更できないようにする」を参照してください。

Service AdministratorロールまたはコンテナのX-Container-Write ACLで指定されたロールを持つすべてのユーザーは、オブジェクトのWORMポリシー・ヘッダーX-Worm-Expiration-DaysおよびX-Worm-Expiration-Atを設定できます。

REST APIを使用してオブジェクトのメタデータを設定する方法については、Oracle Cloud Infrastructure Object Storage Classicの標準ストレージ用のREST API「オブジェクトの作成または置換」を参照してください。

cURLコマンド構文

ポリシーの有効期間を指定してオブジェクトのWORMポリシーを設定するには:

curl -v -X PUT \
     -H "X-Auth-Token: token" \
     -H "X-Worm-Expiration-Days: period" \
     -H "Content-Length: length"
     accountURL/containerName/objectName

有効期限を設定してオブジェクトのWORMポリシーを設定するには:

curl -v -X PUT \
     -H "X-Auth-Token: token" \
     -H "X-Worm-Expiration-At: time" \
     -H "Content-Length: length"
     accountURL/containerName/objectName
  • tokenは、以前にOracle Cloud Infrastructure Object Storage Classicから取得した認証トークンです。 「REST API使用時のアクセス認証」を参照してください。
  • periodは、WORMポリシーがコンテナに設定されている期間(日数)です。
  • timeは、WORMポリシーの有効期限が切れる日時を表すUNIXエポック・タイムスタンプです。 たとえば、1481364600は2016年12月10日10:10:00 GMTを表します。 http://epochconverter.comを参照してください。

    この値は現在のエポック時間より長くなければなりません。

  • lengthはオブジェクトのサイズです。
  • accountURLの構文については、「Oracle Cloud Infrastructure Object Storage ClassicリソースのREST URLについて」を参照してください。
  • containerNameは、オブジェクトをアップロードする必要があるコンテナの名前です。
  • objectNameは、WORMポリシーを設定する必要があるオブジェクトの名前です。

注意:

Oracle Cloud Infrastructure Object Storage ClassicにREST APIリクエストを送信すると、コンテナ名、オブジェクト名、メタデータ値の非ASCII文字はすべてURLエンコードされている必要があります。 たとえば、my containermy%20containerとしてエンコードする必要があります。%20はスペース文字のHTMLエンコードです。 同様に、my Über Containermy%20%C3%9Cber%20Containerとしてエンコードする必要があります。%20はスペース文字を表し、%C3%9CÜ文字です。

HTTPレスポンス・コード

オブジェクト・メタデータを取得する方法については、「オブジェクト・メタデータの取得」を参照してください。

cURLコマンド例

次の詳細を含むサンプルCloudアカウント:
  • アカウント名: acme
  • RESTエンドポイントURL : https://acme.storage.oraclecloud.com/v1/Storage-acme
  • RESTエンドポイント(永続)URL : https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365

    注意:

    2017年11月以降に作成されたアカウントのREST Endpoint (Permanent)URLが表示されます。

サンプルのCloudアカウントのRESTエンドポイントURLは、このセクションのすべてのcURLコマンドの例で使用されています。 REST Endpoint (Permanent)URLを使用するには、https://acme.storage.oraclecloud.com/v1/Storage-acmehttps://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365に置き換えます。

  • このコマンドは、コンテナFirstContainerにアップロードされたオブジェクトFirstObject4日のWORMポリシーを設定します。

    curl -v -X PUT \
         -H "X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b" \
         -H "X-Worm-Expiration-Days: 4" \
         -H "Content-Length: 0"
         https://acme.storage.oraclecloud.com/v1/Storage-acme/FirstContainer/FirstObject
    

    次に、このコマンドの出力例を示します:

    > PUT /v1/Storage-acme/FirstContainer/FirstObject HTTP/1.1
    > User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.14.0.0 zlib/1.2.3 libidn/1.18 libssh2/1.4.2
    > Host: acme.storage.oraclecloud.com
    > Accept: */*
    > X-Worm-Expiration-Days: 4
    > X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b
    > Content-Length: 0
    
    < HTTP/1.1 201 Created
    < Date: Fri, 06 Dec 2016 11:41:20 GMT
    < Content-Type: text/html; charset=UTF-8
    < X-Trans-Id: txe8869b3edea348e5b49eb-0054f99088
    < Cache-Control: no-cache
    < Pragma: no-cache
    < Content-Language: en
    
  • このコマンドは、コンテナFirstContainerにアップロードされたオブジェクトSecondObjectのエポック・タイムスタンプ1481234400で表されるThu, 08 Dec 2016 22:00:00 GMTで期限切れになるWORMポリシーを設定します。

    curl -v -X PUT \
         -H "X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b" \
         -H "X-Worm-Expiration-At: 1481234400" \
         -H "Content-Length: 12"
         https://acme.storage.oraclecloud.com/v1/Storage-acme/FirstContainer/SecondObject
    

    次に、このコマンドの出力例を示します:

    > PUT /v1/Storage-acme/FirstContainer/SecondObject HTTP/1.1
    > User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.14.0.0 zlib/1.2.3 libidn/1.18 libssh2/1.4.2
    > Host: acme.storage.oraclecloud.com
    > Accept: */*
    > X-Worm-Expiration-At: 1481234400
    > X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b
    > Content-Length: 12
    
    < HTTP/1.1 201 Created
    < Date: Fri, 06 Dec 2016 11:43:50 GMT
    < Content-Type: text/html; charset=UTF-8
    < X-Trans-Id: txe8869b3edea348e5b49eb-0054f99095
    < Cache-Control: no-cache
    < Pragma: no-cache
    < Content-Language: en
    

オブジェクト・メタデータの取得

サービス管理者ロールまたはコンテナのX-Container-Read ACLに指定されたロールを持つすべてのユーザーがこのタスクを実行できます。

HEADリクエストを送信して、コンテナのオブジェクトに関する情報を取得できます。次の情報が戻されます。

  • オブジェクト・タイプ(Content-Type)
  • オブジェクト・サイズ(Content-Length)
  • MD5チェックサム値(Etag)
次のインタフェースを使用して、オブジェクトのメタデータを取得できます:
インタフェース 資料

RESTful API

「オブジェクト・メタデータを表示」in Oracle Cloud Infrastructure Object Storage Classicの標準ストレージ用のREST API」を参照してください。

ファイル転送マネージャAPI

Oracle Cloud Infrastructure Object Storage Classic用のJava APIリファレンスFile Transfer Manager」class: ObjectMetadataを参照してください。

ファイル転送マネージャCLI

Oracle Cloud Infrastructure Object Storage Classicのコマンドライン・リファレンス」setQuotaBytes()を参照してください。

cURLコマンド構文

curl -v -X HEAD \
     -H "X-Auth-Token: token" \
     accountURL/containerName/objectName

注意:

Oracle Cloud Infrastructure Object Storage ClassicにREST APIリクエストを送信すると、コンテナ名、オブジェクト名、メタデータ値の非ASCII文字はすべてURLエンコードされている必要があります。 たとえば、my containermy%20containerとしてエンコードする必要があります。%20はスペース文字のHTMLエンコードです。 同様に、my Über Containermy%20%C3%9Cber%20Containerとしてエンコードする必要があります。%20はスペース文字を表し、%C3%9CÜ文字です。

HTTPレスポンス・コード

cURLコマンド例

次の詳細を含むサンプルCloudアカウント:
  • アカウント名: acme
  • RESTエンドポイントURL : https://acme.storage.oraclecloud.com/v1/Storage-acme
  • RESTエンドポイント(永続)URL : https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365

    注意:

    2017年11月以降に作成されたアカウントのREST Endpoint (Permanent)URLが表示されます。
  • 「RESTエンドポイント」フィールドから取得したRESTエンドポイントURLを使用する方法:
    curl -v -X HEAD \
         -H "X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b" \
         https://acme.storage.oraclecloud.com/v1/Storage-acme/FirstContainer/myObject
    

    次に、このコマンドの出力例を示します:

    > HEAD /v1/acme.storage.oraclecloud.com/v1/Storage-acme/FirstContainer/myObject HTTP/1.1
    > User-Agent: curl/7.29.0
    > Host: acme.storage.oraclecloud.com
    > Accept: */*
    > X-Auth-Token: AUTH_tk4863bdbfb5eee0d6d452eed5348d21ed
    >
    < HTTP/1.1 200 OK
    < Accept-Ranges: bytes
    < Last-Modified: Wed, 16 Dec 2015 08:14:17 GMT
    < Etag: f1c9645dbc14efddc7d8a322685f26eb
    < X-Timestamp: 1450253656.45313
    < X-Trans-Id: txb3d80329b3ec4915971c0-0056a9d7c0ga
    < Date: Thu, 28 Jan 2016 08:56:32 GMT
    < Connection: keep-alive
    < X-Last-Modified-Timestamp: 1450253656.45313
    < Content-Type: application/octet-stream;charset=UTF-8
    < Content-Length: 10485760
    
  • 「RESTエンドポイント(永続的)」フィールドから取得したサービス永続RESTエンドポイントURLの使用:

    このcURLコマンドの例は、2017年11月以降に作成されたアカウントに適用されます。

    curl -v -X HEAD \
         -H "X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b" \
         https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365/FirstContainer/myObject
    

    次に、このコマンドの出力例を示します:

    > HEAD v1/storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365/FirstContainer/myObject HTTP/1.1
    > User-Agent: curl/7.29.0
    > Host: storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com
    > Accept: */*
    > X-Auth-Token: AUTH_tk4863bdbfb5eee0d6d452eed5348d21ed
    >
    < HTTP/1.1 200 OK
    < Accept-Ranges: bytes
    < Last-Modified: Wed, 16 Dec 2015 08:14:17 GMT
    < Etag: f1c9645dbc14efddc7d8a322685f26eb
    < X-Timestamp: 1450253656.45313
    < X-Trans-Id: txb3d80329b3ec4915971c0-0056a9d7c0ga
    < Date: Thu, 28 Jan 2016 08:56:32 GMT
    < Connection: keep-alive
    < X-Last-Modified-Timestamp: 1450253656.45313
    < Content-Type: application/octet-stream;charset=UTF-8
    < Content-Length: 10485760
    

ラージ・オブジェクトのオブジェクト・メタデータの取得

サービス管理者ロールまたはコンテナのX-Container-Read ACLに指定されたロールを持つすべてのユーザーがこのタスクを実行できます。

HEADリクエストを送信して、コンテナのラージ・オブジェクトに関する情報を取得できます。次の情報が戻されます。

  • オブジェクト・タイプ(Content-Type)
  • オブジェクト・サイズ(Content-Length)
  • MD5チェックサム値(Etag)

REST APIを使用したラージ・オブジェクト・メタデータの取得の詳細は、OpenStack Object Storage Service APIリファレンスオブジェクト・メタデータの取得に関する項を参照してください。 Javaライブラリでは、このタスクはサポートされていません。

cURLコマンド構文

curl -v -X HEAD \
     -H "X-Auth-Token: token" \
     accountURL/containerName/manifestObjectName

HTTPレスポンス・コード

cURLコマンド例

次の詳細を含むサンプルCloudアカウント:
  • アカウント名: acme
  • RESTエンドポイントURL : https://acme.storage.oraclecloud.com/v1/Storage-acme
  • RESTエンドポイント(永続)URL : https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365

    注意:

    2017年11月以降に作成されたアカウントのREST Endpoint (Permanent)URLが表示されます。
  • 「RESTエンドポイント」フィールドから取得したRESTエンドポイントURLを使用する方法:
    curl -v -X HEAD \
         -H "X-Auth-Token: AUTH_tka6b18380f0e22c57d721b9101d425759" \
         https://acme.storage.oraclecloud.com/v1/Storage-acme/FirstContainer/LargeFile.manifest
    

    次に、このコマンドの出力例を示します:

    > HEAD /v1/acme.storage.oraclecloud.com/v1/Storage-acme/FirstContainer/LargeFile.manifest HTTP/1.1
    > User-Agent: curl/7.29.0
    > Host: acme.storage.oraclecloud.com
    > Accept: */*
    > X-Auth-Token: AUTH_tka6b18380f0e22c57d721b9101d425759
    >
    < HTTP/1.1 200 OK
    < Etag: "6e9647a0cd268b9299e647d28f7027f7"
    < Accept-Ranges: bytes
    < Last-Modified: Mon, 25 Jan 2016 18:48:22 GMT
    < X-Object-Manifest: FirstContainer/segment_
    < X-Timestamp: 1453747701.91311
    < X-Trans-Id: txbfb035e9ddf24d96bf602-0056ab5bf2ga
    < Date: Fri, 29 Jan 2016 12:32:50 GMT
    < Connection: keep-alive
    < X-Last-Modified-Timestamp: 1453747701.91311
    < Content-Type: application/zip;charset=UTF-8
    < Content-Length: 52428800
    
  • 「RESTエンドポイント(永続的)」フィールドから取得したサービス永続RESTエンドポイントURLの使用:

    このcURLコマンドの例は、2017年11月以降に作成されたアカウントに適用されます。

    curl -v -X HEAD \
         -H "X-Auth-Token: AUTH_tka6b18380f0e22c57d721b9101d425759" \
         https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365/FirstContainer/LargeFile.manifest
    

    次に、このコマンドの出力例を示します:

    > HEAD /v1/storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365/FirstContainer/LargeFile.manifest HTTP/1.1
    > User-Agent: curl/7.29.0
    > Host: storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com
    > Accept: */*
    > X-Auth-Token: AUTH_tka6b18380f0e22c57d721b9101d425759
    >
    < HTTP/1.1 200 OK
    < Etag: "6e9647a0cd268b9299e647d28f7027f7"
    < Accept-Ranges: bytes
    < Last-Modified: Mon, 25 Jan 2016 18:48:22 GMT
    < X-Object-Manifest: FirstContainer/segment_
    < X-Timestamp: 1453747701.91311
    < X-Trans-Id: txbfb035e9ddf24d96bf602-0056ab5bf2ga
    < Date: Fri, 29 Jan 2016 12:32:50 GMT
    < Connection: keep-alive
    < X-Last-Modified-Timestamp: 1453747701.91311
    < Content-Type: application/zip;charset=UTF-8
    < Content-Length: 52428800
    

Archiveコンテナ内のオブジェクトのステータスの確認

Oracle Cloud at CustomerではなくこのトピックはOracle Cloud at Customerには適用されません。

コンテナのX-Container-Read ACLに指定されたロールを持つユーザーはすべて、Archiveコンテナ内のオブジェクトのステータスを確認できます。

Webコンソールを使用したオブジェクトのステータスの確認

  1. Oracle Cloud Infrastructure Object Storage Classicコンソールにサインインします。
  2. ステータスを確認するオブジェクトが含まれているArchiveコンテナを選択します。

    コンテナ内のオブジェクトがリストされます。

  3. ステータスを確認するオブジェクトを特定します。
  4. 「Check Status」を選択します。
    • オブジェクトがアーカイブされている場合は、「Checking current status of archive object」ダイアログ・ボックスが表示され、次のメッセージが示されます。

      Currently the object is archived.

      オブジェクトをリストアする場合は、「Restore」を選択します。 「アーカイブ済オブジェクトのリストア」を参照してください。

      それ以外の場合は、「Cancel」をクリックします。

    • アーカイブ済オブジェクトのリストア中には、「Checking current status of archive object」ダイアログ・ボックスが表示され、次のメッセージが示されます。

      Restoration job is in progress.

  5. 「OK」をクリックします。

REST APIを使用したオブジェクトのステータスの確認

Archiveコンテナ内のオブジェクトを作成またはリストアした後、オブジェクトのステータスをヘッダーX-Archive-Restore-Statusから確認できます。このステータスは、次の値のいずれかを持つ場合があります。
  • archived: オブジェクトがアーカイブされていることを示します
  • restored: オブジェクトがリストアされていることを示します
  • inprogress: オブジェクトのリストアが進行中であることを示します

cURLコマンド構文

curl -v -X HEAD \
     -H "X-Auth-Token: token" \
     accountURL/containerName/objectName

注意:

Oracle Cloud Infrastructure Object Storage ClassicにREST APIリクエストを送信すると、コンテナ名、オブジェクト名、メタデータ値の非ASCII文字はすべてURLエンコードされている必要があります。 たとえば、my containermy%20containerとしてエンコードする必要があります。%20はスペース文字のHTMLエンコードです。 同様に、my Über Containermy%20%C3%9Cber%20Containerとしてエンコードする必要があります。%20はスペース文字を表し、%C3%9CÜ文字です。

HTTPレスポンス・コード

cURLコマンド例

次の詳細を含むサンプルCloudアカウント:
  • アカウント名: acme
  • RESTエンドポイントURL : https://acme.storage.oraclecloud.com/v1/Storage-acme
  • RESTエンドポイント(永続)URL : https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365

    注意:

    2017年11月以降に作成されたアカウントのREST Endpoint (Permanent)URLが表示されます。
  • 「RESTエンドポイント」フィールドから取得したRESTエンドポイントURLを使用する方法:
    curl -v -X HEAD \
         -H "X-Auth-Token: AUTH_tkb237a55e17b772a7579f433d8b4f6e05" \
         https://acme.storage.oraclecloud.com/v1/Storage-acme/firstArchiveContainer/obj1.txt
    

    次は、オブジェクト・ステータスがarchivedである場合のこのコマンドの出力の例です。

    > HEAD /v1/Storage-acme/firstArchiveContainer/obj1.txt HTTP/1.1
    > User-Agent: curl/7.29.0
    > Host: acme.storage.oraclecloud.com:443
    > Accept: */*
    > X-Auth-Token: AUTH_tkb237a55e17b772a7579f433d8b4f6e05
    >
    < HTTP/1.1 200 OK
    < X-Archive-Restore-Status: archived
    < Accept-Ranges: bytes
    < Last-Modified: Thu, 18 Jun 2015 19:45:26 GMT
    < Etag: 3db2050fcf84bb631dcae417d3db518c
    < X-Timestamp: 1434656725.77022
    < X-Trans-Id: tx37fb896a0a8144f3860da-0055832016ga
    < Date: Thu, 18 Jun 2015 19:46:30 GMT
    < Content-Type: text/plain;charset=UTF-8
    < Content-Length: 12
    <
    
  • 「RESTエンドポイント(永続的)」フィールドから取得したサービス永続RESTエンドポイントURLの使用:

    注意:

    このcURLコマンドの例は、2017年11月以降に作成されたアカウントに適用されます。
    curl -v -X HEAD \
         -H "X-Auth-Token: AUTH_tkb237a55e17b772a7579f433d8b4f6e05" \
         https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365/firstArchiveContainer/obj1.txt
    

    次は、オブジェクト・ステータスがarchivedである場合のこのコマンドの出力の例です。

    > HEAD /v1/Storage-7b16fede61e1417ab83eb52e06f0e365/firstArchiveContainer/obj1.txt HTTP/1.1
    > User-Agent: curl/7.29.0
    > Host: storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com:443
    > Accept: */*
    > X-Auth-Token: AUTH_tkb237a55e17b772a7579f433d8b4f6e05
    >
    < HTTP/1.1 200 OK
    < X-Archive-Restore-Status: archived
    < Accept-Ranges: bytes
    < Last-Modified: Thu, 18 Jun 2015 19:45:26 GMT
    < Etag: 3db2050fcf84bb631dcae417d3db518c
    < X-Timestamp: 1434656725.77022
    < X-Trans-Id: tx37fb896a0a8144f3860da-0055832016ga
    < Date: Thu, 18 Jun 2015 19:46:30 GMT
    < Content-Type: text/plain;charset=UTF-8
    < Content-Length: 12
    <
    

アーカイブ済オブジェクトのリストア

Oracle Cloud at CustomerではなくこのトピックはOracle Cloud at Customerには適用されません。

サービス管理者ロールまたはコンテナのX-Container-Read ACLに指定されたロールを持つすべてのユーザーがこのタスクを実行できます。

アーカイブ済オブジェクトをダウンロードするには、最初にオブジェクトをリストアする必要があります。 アーカイブ済オブジェクトのリストアは、非同期的な操作です。 オブジェクトをリストアするには最大4時間かかる場合があります。 オブジェクトをリストアすることをリクエストすると、ジョブIDと追跡URLが返されます。 この情報を使用して、オブジェクトのリストア進行状況を監視できます。

コンテナ内のアーカイブ済オブジェクトのリストアには、次に示すインタフェースを使用できます。
インタフェース 資料

Webコンソール

「Webコンソールを使用したアーカイブ済オブジェクトのリストア」を参照してください。

RESTful API

「アーカイブされたオブジェクトの取得をトリガー」in Oracle Cloud Infrastructure Object Storage Classicのアーカイブ・ストレージ用REST APIを参照してください。

ファイル転送マネージャCLI

Oracle Cloud Infrastructure Object Storage Classicのコマンドライン・リファレンス」「オブジェクトのリストア」を参照してください。

ファイル転送マネージャAPI

Oracle Cloud Infrastructure Object Storage Classic用Java APIリファレンスFile Transfer Manager」restoreObjectを参照してください。

Webコンソールを使用したアーカイブ済オブジェクトのリストア

  1. Oracle Cloud Infrastructure Object Storage Classicコンソールにサインインします。
  2. リストアするオブジェクトが含まれているArchiveコンテナを選択します。

    コンテナ内のオブジェクトがリストされます。

  3. リストアするアーカイブ済オブジェクトを特定します。
  4. 「Check Status」を選択します。

    「Checking current status of archive object」ダイアログ・ボックスが表示され、次のメッセージが示されます。

    Currently the object is archived.

  5. 「Restore」を選択して、アーカイブ済オブジェクトをリストアします。

    次のメッセージが表示されます。

    Are you sure you want to restore the object objectName?

  6. 「OK」をクリックします。

    次のメッセージが表示されます。

    Restore job for objectName initiated successfully. You can check the Restore Status by clicking the Check Status button.

    デフォルトで、オブジェクトは1日はリストアされたままですが、その後ダウンロードするにはもう一度リストアする必要があります。

  7. 「OK」をクリックします。

REST APIを使用したアーカイブ済オブジェクトのリストア

cURLコマンド構文

curl -v -X POST \
     -H "X-Auth-Token: token" \
     "accountURL/containerName/objectName?restore"

注意:

Oracle Cloud Infrastructure Object Storage ClassicにREST APIリクエストを送信すると、コンテナ名、オブジェクト名、メタデータ値の非ASCII文字はすべてURLエンコードされている必要があります。 たとえば、my containermy%20containerとしてエンコードする必要があります。%20はスペース文字のHTMLエンコードです。 同様に、my Über Containermy%20%C3%9Cber%20Containerとしてエンコードする必要があります。%20はスペース文字を表し、%C3%9CÜ文字です。

HTTPレスポンス・コード

cURLコマンド例

次の詳細を含むサンプルCloudアカウント:
  • アカウント名: acme
  • RESTエンドポイントURL : https://acme.storage.oraclecloud.com/v1/Storage-acme
  • RESTエンドポイント(永続)URL : https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365

    注意:

    2017年11月以降に作成されたアカウントのREST Endpoint (Permanent)URLが表示されます。
  • 「RESTエンドポイント」フィールドから取得したRESTエンドポイントURLを使用する方法:
    curl -v -X POST \ 
         -H "X-Auth-Token: AUTH_tk1ff0554c1fefff9209696d63553722fd" \
         "https://acme.storage.oraclecloud.com/v0/Storage-acme/firstArchiveContainer/file.txt?restore"

    次に、このコマンドの出力例を示します:

    > HEAD /v1/Storage-acme/firstArchiveContainer/file.txt HTTP/1.1
    > User-Agent: curl/7.29.0
    > Host: acme.storage.oraclecloud.com:443
    > Accept: */*
    > X-Auth-Token: AUTH_tk1ff0554c1fefff9209696d63553722fd
    >
    > POST /v0/Storage-acme/firstArchiveContainer/file.txt?restore HTTP/1.1
    > User-Agent: curl/7.29.0
    > Host: acme.storage.oraclecloud.com:443
    > Accept: */*
    > X-Auth-Token: AUTH_tk1ff0554c1fefff9209696d63553722fd
    < HTTP/1.1 202 Accepted
    < Location: acme.storage.oraclecloud.com:443/v0/Storage-acme/firstArchiveContainer?jobs&jobid=a75c8bbf53224a88738e68d6628acd83a4b300e4
    < X-Archive-Restore-Tracking: http://acme.storage.oraclecloud.com:443/v0/Storage-acme/TestArch?jobs&jobid=a75c8bbf53224a88738e68d6628acd83a4b300e4
    < X-Archive-Restore-JobId: a75c8bbf53224a88738e68d6628acd83a4b300e4
    < Content-Length: 0
    < Date: Thu, 18 Jun 2015 17:53:41 GMT
    <
    

    注意:

    デフォルトで、オブジェクトは1日はリストアされたままですが、その後ダウンロードするにはもう一度リストアする必要があります。 次の例に示すように、X-Archive-Restore-Expirationヘッダーに期間を指定することによって、オブジェクトがリストアされたまま保持される期間(日数)を変更できます。

    curl -v -X POST \ 
         -H "X-Auth-Token: AUTH_tk1ff0554c1fefff9209696d63553722fd" \
         -H "X-Archive-Restore-Expiration: 3" \
         "https://acme.storage.oraclecloud.com/v0/Storage-acme/firstArchiveContainer/file.txt?restore
  • 「RESTエンドポイント(永続的)」フィールドから取得したサービス永続RESTエンドポイントURLの使用:

    このcURLコマンドの例は、2017年11月以降に作成されたアカウントに適用されます。

    curl -v -X POST \ 
         -H "X-Auth-Token: AUTH_tk1ff0554c1fefff9209696d63553722fd" \
         "https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365/firstArchiveContainer/file.txt?restore"

    次に、このコマンドの出力例を示します:

    > HEAD /v1/Storage-7b16fede61e1417ab83eb52e06f0e365/firstArchiveContainer/file.txt HTTP/1.1
    > User-Agent: curl/7.29.0
    > Host: storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com:443
    > Accept: */*
    > X-Auth-Token: AUTH_tk1ff0554c1fefff9209696d63553722fd
    >
    > POST /v0/Storage-7b16fede61e1417ab83eb52e06f0e365/firstArchiveContainer/file.txt?restore HTTP/1.1
    > User-Agent: curl/7.29.0
    > Host: storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com:443
    > Accept: */*
    > X-Auth-Token: AUTH_tk1ff0554c1fefff9209696d63553722fd
    < HTTP/1.1 202 Accepted
    < Location: https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365/firstArchiveContainer?jobs&jobid=a75c8bbf53224a88738e68d6628acd83a4b300e4
    < X-Archive-Restore-Tracking: http://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com:443/v0/Storage-7b16fede61e1417ab83eb52e06f0e365/TestArch?jobs&jobid=a75c8bbf53224a88738e68d6628acd83a4b300e4
    < X-Archive-Restore-JobId: a75c8bbf53224a88738e68d6628acd83a4b300e4
    < Content-Length: 0
    < Date: Thu, 18 Jun 2015 17:53:41 GMT
    <
    

    注意:

    デフォルトで、オブジェクトは1日はリストアされたままですが、その後ダウンロードするにはもう一度リストアする必要があります。 次の例に示すように、X-Archive-Restore-Expirationヘッダーに期間を指定することによって、オブジェクトがリストアされたまま保持される期間(日数)を変更できます。

    curl -v -X POST \ 
         -H "X-Auth-Token: AUTH_tk1ff0554c1fefff9209696d63553722fd" \
         -H "X-Archive-Restore-Expiration: 3" \
         "https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v0/Storage-7b16fede61e1417ab83eb52e06f0e365/firstArchiveContainer/file.txt?restore

次のステップ

これで、Archiveコンテナ内のオブジェクトのリストア進行状況を追跡できます。 オブジェクトのリストア進行状況を追跡するには、オブジェクトのリストア時にヘッダーX-Archive-Restore-Tracking内のURLおよびヘッダーX-Archive-Restore-JobId内のジョブIDをメモします。 詳細は、「Archiveコンテナ内のオブジェクトのリストアの追跡」を参照してください。

Archiveコンテナ内のオブジェクトのリストアの追跡

Oracle Cloud at CustomerではなくこのトピックはOracle Cloud at Customerには適用されません。

コンテナのX-Container-Read ACLに指定されたロールを持つユーザーはすべて、Archiveコンテナ内のオブジェクトのリストアを追跡できます。

オブジェクトがリストアされてアクセス可能になるまで最大4時間かかる場合があります。

オブジェクトのリストアの進行状況は、オブジェクト・メタデータのX-Archive-Restore-Trackingステータス・ヘッダーのURLから追跡できます。

リストアの進行状況を追跡する場合、次の詳細が表示されます。
  • リストア開始時間
  • リストア終了時間(リストアが完了している場合)
  • リストア進行状況
  • リストアの完了率
  • ジョブ詳細
  • オブジェクト・サイズ
  • オブジェクトEtag
  • リストア済オブジェクトの有効期限
  • オブジェクトのゾーン済バージョンへのリンク
  • ジョブ・タイプ
  • ジョブID

REST APIを使用してarchiveコンテナ内のオブジェクトのリストアをトラッキングする方法の詳細は、Oracle Cloud Infrastructure Object Storage Classicのアーカイブ・ストレージ用REST API「リストア・ジョブのステータスを返す」を参照してください。

cURLコマンド構文

curl -v -X GET \
     -H "X-Auth-Token: token" \
     "accountURL/containerName?jobs&jobID"

注意:

Oracle Cloud Infrastructure Object Storage ClassicにREST APIリクエストを送信すると、コンテナ名、オブジェクト名、メタデータ値の非ASCII文字はすべてURLエンコードされている必要があります。 たとえば、my containermy%20containerとしてエンコードする必要があります。%20はスペース文字のHTMLエンコードです。 同様に、my Über Containermy%20%C3%9Cber%20Containerとしてエンコードする必要があります。%20はスペース文字を表し、%C3%9CÜ文字です。

HTTPレスポンス・コード

cURLコマンド例

  • アカウント名: acme
  • RESTエンドポイントURL : https://acme.storage.oraclecloud.com/v1/Storage-acme
  • RESTエンドポイント(永続)URL : https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365

    注意:

    2017年11月以降に作成されたアカウントのREST Endpoint (Permanent)URLが表示されます。
  • 「RESTエンドポイント」フィールドから取得したRESTエンドポイントURLを使用する方法:
    curl -v -X GET \
         -H "X-Auth-Token: AUTH_tk1ff0554c1fefff9209696d63553722fd" 
         "https://acme.storage.oraclecloud.com/v0/Storage-acme/firstArchiveContainer?jobs&jobid=a75c8bbf53224a88738e68d6628acd83a4b300e4"

    次に、このコマンドの出力例を示します:

    > GET /v0/Storage-acme/firstArchiveContainer?jobs&jobid=a75c8bbf53224a88738e68d6628acd83a4b300e4 HTTP/1.1
    > User-Agent: curl/7.29.0
    > Host: acme.storage.oraclecloud.com:443
    > Accept: */*
    > X-Auth-Token: AUTH_tk1ff0554c1fefff9209696d63553722fd
    >
    < HTTP/1.1 200 OK
    < Transfer-Encoding: chunked
    < Date: Thu, 18 Jun 2015 17:56:14 GMT
    <
    * Connection #0 to host acme.storage.oraclecloud.com left intact
     {
     "endTime":"2015-06-18,17:54",
     "progress":"success","completedPercentage":100,
     "intervalToPoll":10,
     "jobDetails":{
    	"objectSizeInBytes":"20",
    	"objectEtag":"4221d002ceb5d3c9e9137e495ceaa647",
    	"objectExpiration":"1434736481424"
    	},
     "links":
      [
    	{"rel":"self",
    	 "href":"http://acme.storage.oraclecloud.com:443/v0/Storage-acme/TestArch?jobs&jobid=a75c8bbf53224a88738e68d6628acd83a4b300e4"},
    	{"rel":"original","href":"http://acme.storage.oraclecloud.com:443/v1/Storage-acme/TestArch/file.txt"},
    	{"rel":"canonical","href":"http://acme.storage.oraclecloud.com:443/v1/Storage-acme/TestArch/file.txt"}
    	],
     "startTime":"2015-06-18,17:53",
     "completed":true,
     "jobType":"RestoreArchivedObjectJob",
     "jobId":"a75c8bbf53224a88738e68d6628acd83a4b300e4"
     } 

    レスポンス本文内のobjectExpirationフィールドには、リストアされたオブジェクトの有効期限が切れる日時を表すUNIXエポックのタイムスタンプが表示されます。 たとえば、1434736481424は2015年6月19日17:54:41 GMTを表します。 http://www.epochconverter.com/を参照してください。 標準の有効期限は24時間です。

  • 「RESTエンドポイント(永続的)」フィールドから取得したサービス永続RESTエンドポイントURLの使用:

    このcURLコマンドの例は、2017年11月以降に作成されたアカウントに適用されます。

    curl -v -X GET \
         -H "X-Auth-Token: AUTH_tk1ff0554c1fefff9209696d63553722fd" 
         "https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v0/Storage-7b16fede61e1417ab83eb52e06f0e365/firstArchiveContainer?jobs&jobid=a75c8bbf53224a88738e68d6628acd83a4b300e4"

    次に、このコマンドの出力例を示します:

    > GET /v0/Storage-7b16fede61e1417ab83eb52e06f0e365/firstArchiveContainer?jobs&jobid=a75c8bbf53224a88738e68d6628acd83a4b300e4 HTTP/1.1
    > User-Agent: curl/7.29.0
    > Host: storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com:443
    > Accept: */*
    > X-Auth-Token: AUTH_tk1ff0554c1fefff9209696d63553722fd
    >
    < HTTP/1.1 200 OK
    < Transfer-Encoding: chunked
    < Date: Thu, 18 Jun 2015 17:56:14 GMT
    <
    * Connection #0 to host storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com left intact
     {
     "endTime":"2015-06-18,17:54",
     "progress":"success","completedPercentage":100,
     "intervalToPoll":10,
     "jobDetails":{
    	"objectSizeInBytes":"20",
    	"objectEtag":"4221d002ceb5d3c9e9137e495ceaa647",
    	"objectExpiration":"1434736481424"
    	},
     "links":
      [
    	{"rel":"self",
    	 "href":"http://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com:443/v0/Storage-7b16fede61e1417ab83eb52e06f0e365/TestArch?jobs&jobid=a75c8bbf53224a88738e68d6628acd83a4b300e4"},
    	{"rel":"original","href":"http://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com:443/v1/Storage-7b16fede61e1417ab83eb52e06f0e365/TestArch/file.txt"},
    	{"rel":"canonical","href":"http://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com:443/v1/Storage-7b16fede61e1417ab83eb52e06f0e365/TestArch/file.txt"}
    	],
     "startTime":"2015-06-18,17:53",
     "completed":true,
     "jobType":"RestoreArchivedObjectJob",
     "jobId":"a75c8bbf53224a88738e68d6628acd83a4b300e4"
     } 

    レスポンス本文内のobjectExpirationフィールドには、リストアされたオブジェクトの有効期限が切れる日時を表すUNIXエポックのタイムスタンプが表示されます。 たとえば、1434736481424は2015年6月19日17:54:41 GMTを表します。 http://www.epochconverter.com/を参照してください。 標準の有効期限は24時間です。

これで、リストアされたオブジェクトを有効期限が切れる前にダウンロードできます。 詳細は、「オブジェクトのダウンロード」を参照してください。

オブジェクトのダウンロード

オブジェクトをダウンロードすると、オブジェクトのメタデータおよびデータがダウンロードされます。 単一のオブジェクトまたはラージ・オブジェクトをダウンロードできます。

オブジェクトのダウンロード

オブジェクトをダウンロードすると、オブジェクトのメタデータおよびデータがダウンロードされます。

サービス管理者ロールまたはコンテナのX-Container-Read ACLに指定されたロールを持つすべてのユーザーがこのタスクを実行できます。

コンテナからオブジェクトをダウンロードするには、次のインタフェースを使用します。
インタフェース 資料

Webコンソール

(Oracle Cloud at Customerでは使用できません)

Webコンソールを使用したオブジェクトのダウンロードを参照してください。

RESTful API

Oracle Cloud Infrastructure Object Storage Classicの標準ストレージ用のREST API」「オブジェクトのコンテンツとメタデータを取得」を参照してください。

Javaライブラリ

Oracle Cloud Infrastructure Object Storage ClassicのJava APIリファレンス」retrieveObjectを参照してください。

ファイル転送マネージャAPI

Oracle Cloud Infrastructure Object Storage Classic用のJava APIリファレンスFile Transfer Manager」downloadを参照してください。

ファイル転送マネージャCLI

Oracle Cloud Infrastructure Object Storage Classicのコマンドライン・リファレンス」「オブジェクトのダウンロード」を参照してください。

Webコンソールを使用したオブジェクトのダウンロード

(Oracle Cloud at Customerでは使用できません)
  1. Oracle Cloud Infrastructure Object Storage Classicコンソールにサインインします。
  2. オブジェクトをダウンロードする必要があるコンテナを選択します。

    コンテナ内のオブジェクトがリストされます。

  3. 「Container Information」ペインに「Enable Upload and Download」ボタンが表示されている場合は、オブジェクトをダウンロードできません。
    1. 「Enable Upload and Download」をクリックします。

      次のメッセージが表示されます。

      In order to upload and download objects to the current container, this application must enable Cross-Origin Resource Sharing (CORS) for this domain domainName.
      You can disable this setting at anytime. 
      Would you like to continue?
    2. 「OK」をクリックして、CORS (Cross-Origin Resource Sharing)を有効にします。

      注意:

      CORSはコンテナでいつでも無効にできます。 「Container Information」ペインで「Disable Upload and Download」を選択して、CORSを無効にします。
  4. ダウンロードするオブジェクトを特定します。

    注意:

    10 MBより大きいオブジェクトは、Webコンソールを使用してダウンロードできません。 そのようなオブジェクトをダウンロードするには、CLIまたはREST APIを使用します。
  5. ダウンロードするオブジェクトの「Actions」ドロップダウン・リストから、「Download」を選択します。

    オブジェクトが目的の場所にダウンロードされます。

REST APIを使用したオブジェクトのダウンロード

cURLコマンド構文

curl -v -X GET \
     -H "X-Auth-Token: token" \
     -o file \
     accountURL/containerName/objectName

注意:

Oracle Cloud Infrastructure Object Storage ClassicにREST APIリクエストを送信すると、コンテナ名、オブジェクト名、メタデータ値の非ASCII文字はすべてURLエンコードされている必要があります。 たとえば、my containermy%20containerとしてエンコードする必要があります。%20はスペース文字のHTMLエンコードです。 同様に、my Über Containermy%20%C3%9Cber%20Containerとしてエンコードする必要があります。%20はスペース文字を表し、%C3%9CÜ文字です。

HTTPレスポンス・コード

cURLコマンド例

次の詳細を含むサンプルCloudアカウント:
  • アカウント名: acme
  • RESTエンドポイントURL : https://acme.storage.oraclecloud.com/v1/Storage-acme
  • RESTエンドポイント(永続)URL : https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365

    注意:

    2017年11月以降に作成されたアカウントのREST Endpoint (Permanent)URLが表示されます。
  • 「RESTエンドポイント」フィールドから取得したRESTエンドポイントURLを使用する方法:
    curl -v -X GET \
         -H "X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b" \
         -o myFile.txt \
         https://acme.storage.oraclecloud.com/v1/Storage-acme/myContainer/myObject
    

    次に、このコマンドの出力例を示します:

    > GET /v1/Storage-acme/FirstContainer/myObject HTTP/1.1
    > User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.14.0.0 zlib/1.2.3 libidn/1.18 libssh2/1.4.2
    > Host: acme.storage.oraclecloud.com
    > Accept: */*
    > X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b
    >
      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                     Dload  Upload   Total   Spent    Left  Speed
      0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
    < 
    < HTTP/1.1 200 OK
    < Date: Mon, 09 Mar 2015 11:34:33 GMT
    < Content-Length: 23
    < Accept-Ranges: bytes
    < Last-Modified: Mon, 09 Mar 2015 11:26:58 GMT
    < Etag: 846fa9d298be05e5f598703f0c3d6f51
    < X-Timestamp: 1425900417.95553
    < Content-Type: application/octet-stream
    < X-Trans-Id: txf0b592c7e49b4475944f8-0054fd8549
    < Cache-Control: no-cache
    < Pragma: no-cache
    < Content-Language: en
    <
    { [data not shown]
      0    23    0    23    0     0     53      0 --:--:-- --:--:-- --:--:--   234* Connection #0 to host acme.storage.oraclecloud.com left intact
    
    
  • 「RESTエンドポイント(永続的)」フィールドから取得したサービス永続RESTエンドポイントURLの使用:

    注意:

    このcURLコマンドの例は、2017年11月以降に作成されたアカウントに適用されます。
    curl -v -X GET \
         -H "X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b" \
         -o myFile.txt \
         https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365/myContainer/myObject
    

    次に、このコマンドの出力例を示します:

    > GET /v1/Storage-7b16fede61e1417ab83eb52e06f0e365/FirstContainer/myObject HTTP/1.1
    > User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.14.0.0 zlib/1.2.3 libidn/1.18 libssh2/1.4.2
    > Host: storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com
    > Accept: */*
    > X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b
    >
      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                     Dload  Upload   Total   Spent    Left  Speed
      0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
    < 
    < HTTP/1.1 200 OK
    < Date: Mon, 09 Mar 2015 11:34:33 GMT
    < Content-Length: 23
    < Accept-Ranges: bytes
    < Last-Modified: Mon, 09 Mar 2015 11:26:58 GMT
    < Etag: 846fa9d298be05e5f598703f0c3d6f51
    < X-Timestamp: 1425900417.95553
    < Content-Type: application/octet-stream
    < X-Trans-Id: txf0b592c7e49b4475944f8-0054fd8549
    < Cache-Control: no-cache
    < Pragma: no-cache
    < Content-Language: en
    <
    { [data not shown]
      0    23    0    23    0     0     53      0 --:--:-- --:--:-- --:--:--   234* 
    Connection #0 to host storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com left intact
    
    

ラージ・オブジェクトのダウンロード

ラージ・オブジェクトには、5GBを超えるデータが含まれます。 ラージ・オブジェクトをダウンロードするには、単一のラージ・オブジェクトとして連結されたすべてのセグメントを戻すマニフェスト・オブジェクトをダウンロードする必要があります。

大きなオブジェクトをダウンロードするには、次のインタフェースを使用します:
インタフェース 資料

ファイル転送マネージャCLI

Oracle Cloud Infrastructure Object Storage Classicのコマンドライン・リファレンス」「オブジェクトのダウンロード」を参照してください。

cURLコマンド構文

静的ラージ・オブジェクトをダウンロードするには:

curl -v -X GET \
     -H "X-Auth-Token: token" \
     -o largeObject \
     accountURL/containerName/manifestFile \
   
  • tokenは、以前にOracle Cloud Infrastructure Object Storage Classicから取得した認証トークンです。 「REST API使用時のアクセス認証」を参照してください。
  • largeObjectは、オブジェクトのダウンロード先ファイルのフル・パスと名前です。
  • accountURLの構文については、Oracle Cloud Infrastructure Object Storage ClassicリソースのREST URLについて」を参照してください。
  • containerNameは、ダウンロードするセグメント・オブジェクト(ラージ・オブジェクトを形成する)が含まれるコンテナの名前です。
  • manifestFileは、マニフェスト・ファイルの名前です。

注意:

Oracle Cloud Infrastructure Object Storage ClassicにREST APIリクエストを送信すると、コンテナ名、オブジェクト名、メタデータ値の非ASCII文字はすべてURLエンコードされている必要があります。 たとえば、my containermy%20containerとしてエンコードする必要があります。%20はスペース文字のHTMLエンコードです。 同様に、my Über Containermy%20%C3%9Cber%20Containerとしてエンコードする必要があります。%20はスペース文字を表し、%C3%9CÜ文字です。

マニフェスト・オブジェクト(ラージ・オブジェクト全体ではなく)だけをダウンロードするには、?multipart-manifest=get問合せパラメータをGETリクエストに追加します:

curl -v -X GET \
     -H "X-Auth-Token: token" \
     -o manifestFile \
     accountURL/containerName/manifestObjectName?multipart-manifest=get \
   

cURLコマンド例

次の詳細を含むサンプルCloudアカウント:
  • アカウント名: acme
  • RESTエンドポイントURL : https://acme.storage.oraclecloud.com/v1/Storage-acme
  • RESTエンドポイント(永続)URL : https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365

    注意:

    2017年11月以降に作成されたアカウントのREST Endpoint (Permanent)URLが表示されます。
  • 「RESTエンドポイント」フィールドから取得したRESTエンドポイントURLを使用する方法:
    curl -v -X GET \
            -H "X-Auth-Token: AUTH_tk5a58b7a8c34bb7b662523a59a5272650" \
            -o myLargeObject \
            https://acme.storage.oraclecloud.com/v1/Storage-acme/FirstContainer/myLargeFile.manifest \
            

    次に、このコマンドの出力例を示します:

    > GET /v1/Storage-acme/myLargeFile.manifest HTTP/1.1
    > User-Agent: curl/7.29.0
    > Host: acme.storage.oraclecloud.com
    > Accept: */*
    > X-Auth-Token: AUTH_tk5a58b7a8c34bb7b662523a59a5272650
    >
    < HTTP/1.1 200 OK
    < Etag: "6e9647a0cd268b9299e647d28f7027f7"
    < Accept-Ranges: bytes
    < Last-Modified: Mon, 20 Jan 2016 18:48:22 GMT
    < X-Object-Manifest: FirstContainer/segment_
    < X-Timestamp: 1453747701.91311
    < X-Trans-Id: tx9f77e1e8b7b74de18dc53-0056a8a3f5ga
    < Date: Wed, 20 Jan 2016 11:03:18 GMT
    < Connection: keep-alive
    < X-Last-Modified-Timestamp: 1453747701.91311
    < Content-Type: application/zip;charset=UTF-8
    < Content-Length: 52428800
    
  • 「RESTエンドポイント(永続的)」フィールドから取得したサービス永続RESTエンドポイントURLの使用:

    注意:

    このcURLコマンドの例は、2017年11月以降に作成されたアカウントに適用されます。
    curl -v -X GET \
            -H "X-Auth-Token: AUTH_tk5a58b7a8c34bb7b662523a59a5272650" \
            -o myLargeObject \
            https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365/FirstContainer/myLargeFile.manifest \
            

    次に、このコマンドの出力例を示します:

    > GET /v1/Storage-7b16fede61e1417ab83eb52e06f0e365/myLargeFile.manifest HTTP/1.1
    > User-Agent: curl/7.29.0
    > Host: storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com
    > Accept: */*
    > X-Auth-Token: AUTH_tk5a58b7a8c34bb7b662523a59a5272650
    >
    < HTTP/1.1 200 OK
    < Etag: "6e9647a0cd268b9299e647d28f7027f7"
    < Accept-Ranges: bytes
    < Last-Modified: Mon, 20 Jan 2016 18:48:22 GMT
    < X-Object-Manifest: FirstContainer/segment_
    < X-Timestamp: 1453747701.91311
    < X-Trans-Id: tx9f77e1e8b7b74de18dc53-0056a8a3f5ga
    < Date: Wed, 20 Jan 2016 11:03:18 GMT
    < Connection: keep-alive
    < X-Last-Modified-Timestamp: 1453747701.91311
    < Content-Type: application/zip;charset=UTF-8
    < Content-Length: 52428800
    

一時URLを使用したオブジェクトのダウンロード

期間限定の一時URLを作成して、Oracle Cloud Infrastructure Object Storage Classicからオブジェクトをダウンロードするための一時的な安全なアクセスを提供することができます。

オブジェクトの一時URLを生成するには、アカウント・レベルまたはコンテナ・レベルで前に指定した秘密キーを使用する必要があります。 どちらの場合も、最大2つのキーを指定できます。
  • アカウント・レベルのキーを使用して、Oracle Cloud Infrastructure Object Storage Classicインスタンス内の任意のコンテナからオブジェクトをダウンロードできます。
  • コンテナレベルのキーを使用すると、そのコンテナからオブジェクトをダウンロードできます。

始める前に

一時URLを生成するには、OpenStack Swift CLIを使用するか、プログラミング言語で記述されたスクリプトを使用します。 このドキュメントには、OpenStack Swift CLIを使用した例とPythonスクリプトを使用した例があります。

ローカル・ホストに次のソフトウェアをインストールします。

プロシージャ

  1. キーを設定して一時URLを保護します。 アカウント・レベルおよび特定のコンテナにキーを設定し、それらのキーのいずれかを使用して一時URLを生成できます。

    • アカウントにキーを設定するには、次のcURLコマンドを実行します。

      curl -X POST \
           -H 'X-Auth-Token: token' \
           -H 'X-Account-Meta-Temp-URL-Key: key' \
           accountURL
      • tokenは、Oracle Cloud Infrastructure Object Storage Classicから取得した認証トークンです。
      • accountURLは、サービス・インスタンスのRESTエンドポイントURLです。
      • keyは任意に選択した文字列です。
      例:
      curl -X POST \
           -H 'X-Auth-Token: AUTH_tk6b7d5b0d94e653217ee0898d43613a07' \
           -H 'X-Account-Meta-Temp-URL-Key: tempkey' \
           https://acme.storage.oraclecloud.com/v1/Storage-acme
    • コンテナにキーを設定するには、次のcURLコマンドを実行します。
      curl -X POST \
           -H 'X-Auth-Token: token' \
           -H 'X-Container-Meta-Temp-URL-Key: key' \
           accountURL/containerName
      • tokenは、Oracle Cloud Infrastructure Object Storage Classicから取得した認証トークンです。
      • accountURLは、サービス・インスタンスのRESTエンドポイントURLです。
      • keyは任意に選択した文字列です。
      • containerNameは、オブジェクトをダウンロードするコンテナの名前です。
      例:
      curl -X POST \
           -H 'X-Auth-Token: AUTH_tk6b7d5b0d94e653217ee0898d43613a07' \
           -H 'X-Container-Meta-Temp-URL-Key: tempkey1' \
           https://acme.storage.oraclecloud.com/v1/Storage-acme/myFirstContainer
  2. 一時URLを生成するには、OpenStack Swift CLIを使用するか、プログラミング言語で記述されたスクリプトを使用します。

    OpenStack Swift CLIを使用して一時URLを生成するには、次のステップを実行します。

    1. 次のコマンドを実行します。

      swift tempurl GET seconds /v1/Storage-identityDomainName/containerName/objectName key
      • secondsは、一時URLの生成後、一時URLが有効である時間(秒単位)です。
      • identityDomainNameは、Oracle Cloud Infrastructure Object Storage Classicアカウントのアイデンティティ・ドメイン名です。
      • containerNameはコンテナの名前です。
      • objectNameは、一時URLを使用してダウンロードする必要があるオブジェクトの名前です。
      • keyは、前の手順でX-Account-Meta-Temp-URL-KeyヘッダーまたはX-Container-Meta-Temp-URL-Keyヘッダーに割り当てた値です。
      例:
      swift tempurl GET 300 /v1/Storage-acme/FirstContainer/tempobject tempkey

      出力:

      /v1/Storage-acme/FirstContainer/tempobject?temp_url_sig=555417815bf1288b46c6c2ae9fc2f90a437a3110&temp_url_expires=1467281788

      出力には、オブジェクトのパス(/v1/Storage-acme/FirstContainer/tempobject)と次の追加問合せパラメータが含まれます:
      • temp_url_sig: URLの暗号署名
      • temp_url_expires: URLが期限切れになる日付と時間(UNIX Epoch形式)。
    2. (オプション) コンテナで終わるパスの一時URLを生成した場合、生成されるURLにはオブジェクト名は含められません。 次の例に示すように、URLのコンテナ名と?の間に必要なオブジェクトの名前を挿入する必要があります。

      /v1/containerName/objectName?temp_url_sig=value&temp_url_expires=value

    3. OpenStack Swift CLIによって生成される一時URLは、完全なURLではありません。 完全なURLを作成するには、生成されたパスの前にアカウントURLを次のように付加します。

      https://acme.storage.oraclecloud.com/v1/Storage-acme/containerName/objectName?temp_url_sig=value&temp_url_expires=value
      例:
      https://acme.storage.oraclecloud.com/v1/Storage-acme/FirstContainer/tempobject?temp_url_sig=555417815bf1288b46c6c2ae9fc2f90a437a3110&temp_url_expires=1467281788
  3. または(OpenStack Swift CLIを使用するかわりに)、Pythonまたはその他のプログラミング言語を使用して作成したHMAC-SHA1署名を使用して、オブジェクトの一時URLを生成できます。

    HMAC-SHA1署名には、次のものを含める必要があります。
    • GETメソッド
    • URLが期限切れになる日付と時間
    • キー: 前の手順でX-Account-Meta-Temp-URL-KeyヘッダーまたはX-Container-Meta-Temp-URL-Keyヘッダーに割り当てた値。
    • 一時URLを使用してダウンロードする必要があるオブジェクトのパス。

      /v1/Storage-identityDomainName/containerName/objectName

      オブジェクト名を指定せずに、パスをコンテナで終わらせることができます。 生成された一時URLは、指定したコンテナ内の任意のオブジェクトをダウンロードするために使用できます。 コンテナで終わるパスの構文は、/v1/Storage-identityDomainName/containerNameのようになります。

    例:

    次の詳細を含むサンプルCloudアカウント:
    • アカウント名: acme
    • RESTエンドポイントURL : https://acme.storage.oraclecloud.com/v1/Storage-acme
    • RESTエンドポイント(永続)URL : https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365

      注意:

      2017年11月以降に作成されたアカウントのREST Endpoint (Permanent)URLが表示されます。

    このセクションの例では、サンプルのCloudアカウントのRESTエンドポイントURLが使用されています。 REST Endpoint (Permanent)URLを使用するには、https://acme.storage.oraclecloud.com/v1/Storage-acmehttps://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365に置き換えます。

    次のPythonコード・スニペットの例は、指定した入力を使用して一時URLを生成します。

    # USER INPUT: Specify the following parameters:
    serviceInstanceName = 'Storage' # Leave as is unless your service instance has a different name
    identityDomainName = 'acme' # Name of your identity domain
    container = 'myContainer' # Container that has the objects you need the tempURL for
    key = 'mykey' # X-Container-Meta-Temp-Url-Key or X-Account-Meta-Temp-Url-Key value
    object = 'myObject' # Object name that you need the tempURL for. This is optional if a container-level key is used.
    urlDuration = 300 # Seconds for which the temp URL should work
    serviceRestEndpoint = 'https://acme.storage.oraclecloud.com/v1/Storage-acme' # REST endpoint URL of your service instance
    
    # CODE TO GENERATE THE TEMPORARY URL: Don't change anything in this section
    import hmac
    from hashlib import sha1
    from time import time
    path = '/v1/' + serviceInstanceName + '-' + identityDomainName + '/' + container + '/' + object
    expires = int(time() + urlDuration)
    hmac_body = '%s\n%s\n%s' % ('GET', expires, path)
    sig = hmac.new(key, hmac_body, sha1).hexdigest()
    url = serviceRestEndpoint + '/' + container + '/' + object +'?temp_url_sig=' + sig + '&temp_url_expires=' + str(expires)
    print(url)
    1. このPythonコードのスニペットをプレーン・テキスト・ファイルにコピーします。
    2. コードのUSER INPUTセクションで、コード内のコメントの説明に従って、すべてのパラメータに適切な値を入力します。
    3. ファイルを保存してファイル名をメモします(たとえば、tempURL.py)。
    4. Pythonスクリプトを実行します。

      python tempURL.py

      指定したオブジェクトまたはコンテナの一時URLが、スクリプトによって生成および表示されます。

      :

      • オブジェクトの一時URL : https://acme.storage.oraclecloud.com/v1/Storage-acme/containerName/objectName?temp_url_sig=value&temp_url_expires=value
      • コンテナの一時URL : https://acme.storage.oraclecloud.com/v1/containerName?temp_url_sig=value&temp_url_expires=value

        注意:

        コンテナで終わる一時URLを使用してオブジェクトをダウンロードするには、次の例に示すようにURLのコンテナ名と?の間にオブジェクト名を挿入する必要があります。

        https://acme.storage.oraclecloud.com/v1/Storage-acme/containerName/objectName?temp_url_sig=value&temp_url_expires=value

  4. オブジェクトをダウンロードする必要があるユーザーにこの一時URLを渡します。

オブジェクトの削除

オブジェクトが削除されると、そのオブジェクトとそのメタデータが永久に削除されます。

単一オブジェクトの削除

サービス管理者ロールまたはコンテナのX-Container-Write ACLに指定されたロールを持つすべてのユーザーがこのタスクを実行できます。

コンテナ内のオブジェクトを削除するには、次のインタフェースを使用します。
インタフェース 資料

Webコンソール

(Oracle Cloud at Customerでは使用できません)
Webコンソールを使用した単一オブジェクトの削除を参照してください。

RESTful API

Oracle Cloud Infrastructure Object Storage Classicの標準ストレージ用のREST API」「オブジェクトの削除」を参照してください。

Javaライブラリ

「Oracle Cloud Infrastructure Object Storage ClassicのJava APIリファレンス」deleteObjectを参照してください。

ファイル転送マネージャAPI

Oracle Cloud Infrastructure Object Storage Classic用Java APIリファレンスFile Transfer Manager」deleteObjectを参照してください。

ファイル転送マネージャCLI

Oracle Cloud Infrastructure Object Storage Classicのコマンドライン・リファレンス」「オブジェクトを削除しています」を参照してください。

注意:

X-Delete-AtまたはX-Delete-Afterヘッダーを使用すると、それぞれ未来の指定された時刻、または指定された期間の経過後にオブジェクトを削除するようスケジュールできます。 「オブジェクト自動削除のスケジューリング」を参照してください。

Webコンソールを使用した単一オブジェクトの削除

(Oracle Cloud at Customerでは使用できません)
  1. Oracle Cloud Infrastructure Object Storage Classicコンソールにサインインします。
  2. 削除するオブジェクトがあるコンテナを選択します。

    コンテナ内のオブジェクトが表示されます。

  3. 削除するオブジェクトを特定します。
  4. オブジェクトの「Actions」ドロップダウン・リストから、「Delete」を選択します。

    次のメッセージが表示されます。

    Are you sure want to delete this object?

  5. 「OK」をクリックします。

    オブジェクトがコンテナから削除されます。

REST APIを使用した単一オブジェクトの削除

cURLコマンド構文

curl -v -X DELETE \
     -H "X-Auth-Token: token" \
     accountURL/containerName/objectName

注意:

Oracle Cloud Infrastructure Object Storage ClassicにREST APIリクエストを送信すると、コンテナ名、オブジェクト名、メタデータ値の非ASCII文字はすべてURLエンコードされている必要があります。 たとえば、my containermy%20containerとしてエンコードする必要があります。%20はスペース文字のHTMLエンコードです。 同様に、my Über Containermy%20%C3%9Cber%20Containerとしてエンコードする必要があります。%20はスペース文字を表し、%C3%9CÜ文字です。

HTTPレスポンス・コード

cURLコマンド例

次の詳細を含むサンプルCloudアカウント:
  • アカウント名: acme
  • RESTエンドポイントURL : https://acme.storage.oraclecloud.com/v1/Storage-acme
  • RESTエンドポイント(永続)URL : https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365

    注意:

    2017年11月以降に作成されたアカウントのREST Endpoint (Permanent)URLが表示されます。
  • 「RESTエンドポイント」フィールドから取得したRESTエンドポイントURLを使用する方法:
    curl -v -X DELETE \
         -H "X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b" \
         https://acme.storage.oraclecloud.com/v1/Storage-acme/FirstContainer/myObject2
    

    次に、このコマンドの出力例を示します:

    > DELETE /v1/Storage-acme/FirstContainer/myObject2 HTTP/1.1
    > User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.14.0.0 zlib/1.2.3 libidn/1.18 libssh2/1.4.2
    > Host: acme.storage.oraclecloud.com
    > Accept: */*
    > X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b
    >
    < HTTP/1.1 204 No Content
    < Date: Mon, 09 Mar 2015 11:40:23 GMT
    < Content-Length: 0
    < Content-Type: text/html; charset=UTF-8
    < X-Trans-Id: tx47aef42f16c44bd9a72cb-0054fd86a7
    < Cache-Control: no-cache
    < Pragma: no-cache
    < Content-Language: en
    
  • 「RESTエンドポイント(永続的)」フィールドから取得したサービス永続RESTエンドポイントURLの使用:

    注意:

    このcURLコマンドの例は、2017年11月以降に作成されたアカウントに適用されます。
    curl -v -X DELETE \
         -H "X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b" \
         https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365/FirstContainer/myObject2
    

    次に、このコマンドの出力例を示します:

    > DELETE /v1/Storage-7b16fede61e1417ab83eb52e06f0e365/FirstContainer/myObject2 HTTP/1.1
    > User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.14.0.0 zlib/1.2.3 libidn/1.18 libssh2/1.4.2
    > Host: storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com
    > Accept: */*
    > X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b
    >
    < HTTP/1.1 204 No Content
    < Date: Mon, 09 Mar 2015 11:40:23 GMT
    < Content-Length: 0
    < Content-Type: text/html; charset=UTF-8
    < X-Trans-Id: tx47aef42f16c44bd9a72cb-0054fd86a7
    < Cache-Control: no-cache
    < Pragma: no-cache
    < Content-Language: en
    

ラージ・オブジェクトの削除

ラージ・オブジェクトには、5GBを超えるデータが含まれます。

cURLコマンド構文

静的ラージ・オブジェクトを削除するには、DELETEリクエストを送信し、問合せパラメータ?multipart-manifest=deleteを追加して、マニフェスト・オブジェクトとすべてのセグメント・ファイルを削除します。

注意:

Archiveコンテナから静的ラージ・オブジェクトを削除するには、各セグメント・ファイルおよびマニフェスト・オブジェクトを個別に削除します。 (Oracle Cloud at Customerでは使用できません)
curl -v -X DELETE \
     -H "X-Auth-Token: token" \
     accountURL/containerName/manifestFile?multipart-manifest=delete \
   

注意:

Oracle Cloud Infrastructure Object Storage ClassicにREST APIリクエストを送信すると、コンテナ名、オブジェクト名、メタデータ値の非ASCII文字はすべてURLエンコードされている必要があります。 たとえば、my containermy%20containerとしてエンコードする必要があります。%20はスペース文字のHTMLエンコードです。 同様に、my Über Containermy%20%C3%9Cber%20Containerとしてエンコードする必要があります。%20はスペース文字を表し、%C3%9CÜ文字です。

cURLコマンド例

静的ラージ・オブジェクトを削除するには、cURLコマンドの例を次に示します。

次の詳細を含むサンプルCloudアカウント:
  • アカウント名: acme
  • RESTエンドポイントURL : https://acme.storage.oraclecloud.com/v1/Storage-acme
  • RESTエンドポイント(永続)URL : https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365

    注意:

    2017年11月以降に作成されたアカウントのREST Endpoint (Permanent)URLが表示されます。
  • 「RESTエンドポイント」フィールドから取得したRESTエンドポイントURLを使用する方法:
    curl -v -X DELETE \
            -H "X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b" \
            https://acme.storage.oraclecloud.com/v1/Storage-acme/FirstContainer/myLargeFile.manifest?multipart-manifest=delete \
            

    次に、このコマンドの出力例を示します:

    > DELETE /v1/Storage-acme/myLargeFile.manifest?multipart-manifest=delete
    > User-Agent: curl/7.29.0
    > Host: acme.storage.oraclecloud.com
    > Accept: */*
    > X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b
    >
    < HTTP/1.1 204 No Content
    < X-Trans-Id: txa590ad2c5ce54317bd02e-0056a8a5d5ga
    < Date: Wed, 20 Jan 2016 11:11:17 GMT
    < Connection: keep-alive
    < X-Last-Modified-Timestamp: 1453893077.47202
    < Content-Type: text/html;charset=UTF-8
    <
    
  • 「RESTエンドポイント(永続的)」フィールドから取得したサービス永続RESTエンドポイントURLの使用:

    注意:

    このcURLコマンドの例は、2017年11月以降に作成されたアカウントに適用されます。
    curl -v -X DELETE \
            -H "X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b" \
            https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365/FirstContainer/myLargeFile.manifest?multipart-manifest=delete \
            

    次に、このコマンドの出力例を示します:

    > DELETE /v1/Storage-7b16fede61e1417ab83eb52e06f0e365/myLargeFile.manifest?multipart-manifest=delete
    > User-Agent: curl/7.29.0
    > Host: storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com
    > Accept: */*
    > X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b
    >
    < HTTP/1.1 204 No Content
    < X-Trans-Id: txa590ad2c5ce54317bd02e-0056a8a5d5ga
    < Date: Wed, 20 Jan 2016 11:11:17 GMT
    < Connection: keep-alive
    < X-Last-Modified-Timestamp: 1453893077.47202
    < Content-Type: text/html;charset=UTF-8
    <
    

単一操作での複数のオブジェクトの削除

複数のオブジェクトを単一の操作で削除できます。

注意:

  • この機能は、Archiveコンテナではサポートされません。

  • 単一の操作で最大10,000個のオブジェクトを削除できます。

サービス管理者ロールまたはコンテナのX-Container-Write ACLに指定されたロールを持つすべてのユーザーがこのタスクを実行できます。

オブジェクトを一括削除するには:

以下の詳細を含むサンプルCloudアカウント -
  • アカウント名: acme
  • RESTエンドポイントURL : https://acme.storage.oraclecloud.com/v1/Storage-acme
  • RESTエンドポイント(永続)URL : https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365

    注意:

    2017年11月以降に作成されたアカウントのREST Endpoint (Permanent)URLが表示されます。

サンプルのCloudアカウントのRESTエンドポイントURLは、以下のステップで使用されます。 REST Endpoint (Permanent)URLを使用するには、https://acme.storage.oraclecloud.com/v1/Storage-acmehttps://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365に置き換えます。

  1. 削除する各オブジェクトをリストするプレーン・テキスト・ファイルを作成します。

    プレーン・テキスト・ファイルの各行は、次の例に示すように、container/objectの形式にする必要があります。

    $ cat objects_to_delete.txt
    
    myContainer1/myObject1 
    myContainer1/myObject2 
    myContainer2/myObjectN 
    myContainer3/myObjectX
    

    注意:

    複数のコンテナに含まれるオブジェクトをリストしたプレーン・テキスト・ファイルを作成できます。

    このようなファイルを簡単に作成するには、削除するオブジェクトを含んでいるコンテナにGETコールを送信して、そのGETコールの出力をsedコマンドにパイプします。このコマンドにより、それぞれのオブジェクト名の前にコンテナ名が追加されます。このように編集された出力をテキスト・ファイルにリダイレクトします。

    コマンド例:

    $ curl -X GET 
           -H "X-Auth-Token: AUTH_tkcc14bdc52d571f70991b68907098f831" 
           "https://acme.storage.oraclecloud.com/v1/Storage-acme/myContainer" 
           | sed 's/^/myContainer\//' 
           > objects_to_delete.txt
    
    • myContainerは、削除するオブジェクトを含んでいるコンテナの名前です。 これを目的のコンテナ名に置き換えてください。
    • objects_to_deleteは、削除するオブジェクトがリストされているプレーン・テキスト・ファイルです。
    • コンテナ名の後ろにエスケープされたスラッシュ(\/)が追加されている点に注目してください。 これは、テキスト・ファイルの各行で、コンテナとオブジェクト名を区切るために必要になります。
  2. DELETEリクエストをアカウントURLに送信します。
    • Content-Typetext/plainに設定します。
    • bulk-deleteパラメータを含めます。

    前のステップで作成したファイルobjects_to_delete.txtにリストされているオブジェクトを削除するには:

    $ curl -v -s -X DELETE 
           -H "X-Auth-Token: AUTH_tkcc14bdc52d571f70991b68907098f831" 
           -H "Content-Type: text/plain" 
           -T objects_to_delete.txt 
           "https://acme.storage.oraclecloud.com/v1/Storage-acme/?bulk-delete"
    

    次に、このコマンドの出力例を示します

    > DELETE /v1/Storage-acme/?bulk-delete HTTP/1.1
    > Host: acme.storage.oraclecloud.com
    > Accept: */*
    > X-Auth-Token: AUTH_tkcc14bdc52d571f70991b68907098f831
    > Content-Type: text/plain
    > Content-Length: 75
    
    < HTTP/1.1 200 OK
    < Date: Thu, 12 Dec 2013 14:56:53 GMT
    < Content-Type: text/plain
    < Transfer-Encoding: chunked
    
    Number Deleted: 3
    Number Not Found: 0
    Response Body: 
    Response Status: 200 OK
    Errors:
    

    注意:

    • 操作の結果は、レスポンス本文(戻されたステータス・コードではなく)を参照してください。
    • レスポンス本文のNumber Deletedが、指定したテキスト・ファイルの行数と一致していない場合は、いくつかのオブジェクトが見つからなかったか、削除されなかったことを示します。 コンテナに残されたオブジェクトを確認して、必要に応じて削除してください。
単一操作での複数のオブジェクトの削除には、次に示すインタフェースを使用できます。
インタフェース 資料

RESTful API

OpenStack Object Storage Service APIリファレンス一括操作に関する項を参照してください。

ファイル転送マネージャAPI

Oracle Cloud Infrastructure Object Storage Classic用Java APIリファレンスFile Transfer Manager」deleteObjectsを参照してください。

オブジェクトのコピー

オブジェクトは、同じまたは別のコンテナ内の別のオブジェクトにコピーできます。 オブジェクトをダウンロードして、再度アップロードする必要はありません。サーバー上で、コピー操作が完全に実行されます。

次のロールを持つユーザーがこのタスクを実行できます。
  • サービス管理者ロール
  • ソース・コンテナのX-Container-Read ACLおよびターゲット・コンテナのX-Container-Write ACLに指定されたロール

次の制限が適用されます。

  • 静的ラージ・オブジェクトは、コンテナ間でコピーできます。 セグメントは直接コピーできますが、マニフェストは再作成する必要があります。 既存のマニフェストは、削除されている可能性のある古いセグメントを示すため、使用できません。
  • オブジェクトは他のアカウントにコピーできません。
次のインタフェースを使用してオブジェクトをコピーできます。
インタフェース 資料

RESTful API

「OpenStackオブジェクト・ストレージ・サービスAPIリファレンス」「オブジェクトのコピー」を参照してください

ファイル転送マネージャCLI

n Oracle Cloud Infrastructure Object Storage Classicのコマンドライン・リファレンス」「オブジェクトのコピー」を参照してください。

ファイル転送マネージャAPI

Oracle Cloud Infrastructure Object Storage Classic用のJava APIリファレンスFile Transfer Manager」CopyObjectRequestConfigを参照してください。

cURLコマンド構文

curl -v -X PUT \
     -H "X-Auth-Token: token" \
     -H "X-Copy-From: /srcContainer/srcObject" \
     -H "Content-Length: 0" \
     accountURL/dstContainer/dstObject

または

curl -v -X COPY \
     -H "X-Auth-Token: token" \
     -H "Destination: /dstContainer/dstObject" \
     accountURL/srcContainer/srcObject
  • tokenは、以前にOracle Cloud Infrastructure Object Storage Classicから取得した認証トークンです。 「REST API使用時のアクセス認証」を参照してください。
  • srcContainerは、コピーされるオブジェクトが含まれるコンテナの名前です。
  • srcObjectは、コピーされるオブジェクトの名前です。
  • accountURLの構文については、Oracle Cloud Infrastructure Object Storage ClassicリソースのREST URLについて」を参照してください。
  • dstContainerは、オブジェクトのコピー先コンテナの名前です。 これは、既存のコンテナである必要があります。 つまり、COPY操作では、コピー先にコンテナが作成されません。
  • dstObjectは、COPY操作の結果として作成されるオブジェクトの名前です。

HTTPレスポンス・コード

cURLコマンド例

次のコマンドは、/container1/object1/container2/object1にコピーします。

次の詳細を含むサンプルCloudアカウント:
  • アカウント名: acme
  • RESTエンドポイントURL : https://acme.storage.oraclecloud.com/v1/Storage-acme
  • RESTエンドポイントURL (永続)URL : https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365

    注意:

    2017年11月以降に作成されたアカウントのREST Endpoint URL (Permanent)URLが表示されます。
  • 「RESTエンドポイント」フィールドから取得したRESTエンドポイントURLを使用する方法:
    curl -v -X PUT \
         -H "X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b" \
         -H "X-Copy-From: /container1/object1" \
         -H "Content-Length: 0"
         https://acme.storage.oraclecloud.com/v1/Storage-acme/container2/object1
    

    または

    curl -v -X COPY \
         -H "X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b" \
         -H "Destination: /container2/object1" \
         https://acme.storage.oraclecloud.com/v1/Storage-acme/container1/object1

    次に、このコマンドの出力例を示します:

    > PUT /v1/Storage-acme/Container2/object1 HTTP/1.1
    > User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.14.0.0 zlib/1.2.3 libidn/1.18 libssh2/1.4.2
    > Host: acme.storage.oraclecloud.com
    > Accept: */*
    > X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b
    > X-Copy-From: /Container1/object1
    > Content-Length: 0
    >
    < HTTP/1.1 201 Created
    < Date: Mon, 09 Mar 2015 11:58:23 GMT
    < Content-Length: 0
    < X-Object-Meta-Language: english
    < X-Copied-From-Last-Modified: Mon, 09 Mar 2015 11:46:34 GMT
    < X-Copied-From: Container1/object1
    < Last-Modified: Mon, 09 Mar 2015 11:58:24 GMT
    < Etag: 846fa9d298be05e5f598703f0c3d6f51
    < Content-Type: text/html; charset=UTF-8
    < X-Trans-Id: txecc0da22db8542c099ed0-0054fd8ade
    < Cache-Control: no-cache
    < Pragma: no-cache
    < Content-Language: en
    
  • 「RESTエンドポイント(永続的)」フィールドから取得したサービス永続RESTエンドポイントURLの使用:

    注意:

    このcURLコマンドの例は、2017年11月以降に作成されたアカウントに適用されます。
    curl -v -X PUT \
         -H "X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b" \
         -H "X-Copy-From: /container1/object1" \
         -H "Content-Length: 0"
         https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365/container2/object1
    

    または

    curl -v -X COPY \
         -H "X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b" \
         -H "Destination: /container2/object1" \
         https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365/container1/object1

    次に、このコマンドの出力例を示します:

    > PUT /v1/Storage-7b16fede61e1417ab83eb52e06f0e365/Container2/object1 HTTP/1.1
    > User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.14.0.0 zlib/1.2.3 libidn/1.18 libssh2/1.4.2
    > Host: storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com
    > Accept: */*
    > X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b
    > X-Copy-From: /Container1/object1
    > Content-Length: 0
    >
    < HTTP/1.1 201 Created
    < Date: Mon, 09 Mar 2015 11:58:23 GMT
    < Content-Length: 0
    < X-Object-Meta-Language: english
    < X-Copied-From-Last-Modified: Mon, 09 Mar 2015 11:46:34 GMT
    < X-Copied-From: Container1/object1
    < Last-Modified: Mon, 09 Mar 2015 11:58:24 GMT
    < Etag: 846fa9d298be05e5f598703f0c3d6f51
    < Content-Type: text/html; charset=UTF-8
    < X-Trans-Id: txecc0da22db8542c099ed0-0054fd8ade
    < Cache-Control: no-cache
    < Pragma: no-cache
    < Content-Language: en
    

オブジェクトの暗号化

次のインタフェースを使用してオブジェクトを暗号化できます。
インタフェース 資料

Javaライブラリ

参照:

ファイル転送マネージャAPI

Oracle Cloud Infrastructure Object Storage Classic用のJava APIリファレンスFile Transfer Manager」EncryptedFileTransferManagerを参照してください。

ファイル転送マネージャCLI

参照:

Javaライブラリの使用

Javaライブラリは、Oracle Cloud Infrastructure Object Storage Classicに格納されているオブジェクトを暗号化できます。 すべての暗号化はJavaライブラリ内で行われます。暗号化はサービス内では行われません。 REST APIではこれはサポートされません。

サービス管理者ロールまたはコンテナのX-Container-Write ACLに指定されたロールを持つすべてのユーザーがこのタスクを実行できます。

Oracle Cloud Infrastructure Object Storage Classicで作成するすべてのオブジェクトに対して、Javaライブラリのクライアント側暗号化機能を使用すると、一意の対称キーが生成されます。 Javaライブラリでは、データを格納する前に対称キーを使用して暗号化します。 また、非対称キー・ペアも指定および管理する必要があります。 データを暗号化した後、Javaライブラリでは、非対称キー・ペアを使用して対称キーをエンベロープとして暗号化します。 各オブジェクトをダウンロードおよび再暗号化しなくても、新しいキーに、以前に使用したキー・ペアを再利用できます。 エンベロープ・キーは、メタデータとしてオブジェクト・データとともに格納されます。

Javaライブラリを使用してこのような暗号オブジェクトにアクセスする場合、指定した非対称キー・ペアを使用してエンベロープ・キーが最初に取得されて復号化されます。 次に、生成された対称キーを使用してオブジェクト・データが復号化されます。

クライアント側の暗号オブジェクトへのアクセスは制限できます。 たとえば、コンテナに対する書込みアクセス権は持つが非対称キー・ペアに対するアクセス権は持たない場合、エンベロープ・キー・メタデータをオブジェクトから削除できます。 このため、非対称キー・ペアに対するアクセス権を持つ場合でも、オブジェクト・データはリカバリ不可能になります。

Javaライブラリの暗号化機能を使用する場合は、次の点に注意してください。

  • 2048ビットのRSAキー・ペアのみサポートされます。
  • オブジェクト・データのみ暗号化され、オブジェクト・メタデータは暗号化されません。
  • セグメント化されたオブジェクトは暗号化できません。
  • 暗号化機能の使用中に、暗号化されていないオブジェクトをダウンロードできません。

詳細については、「Oracle Cloud Infrastructure Object Storage ClassicのJava APIリファレンス」EncryptedCloudStorageを参照してください。

FTM CLIの使用

FTM CLIを使用すると、Oracle Cloud Infrastructure Object Storage Classicに格納するデータのクライアント側の暗号化が可能になります。 クライアント上のFTM CLIは、クラウド・サービスに転送される前にファイルを暗号化します。 ファイルはクラウドに転送されるとき、およびクラウド上に安静時に暗号化されます。 FTM CLIを使用すると、静的ラージ・オブジェクト(SLO)をクライアント側で暗号化および復号化できますが、ダイナミック・ラージ・オブジェクト(DLO)は暗号化および復号化できません。 Oracle Cloud Infrastructure Object Storage Classicのコマンドライン・リファレンス」「クライアント側のファイル暗号化について」を参照してください。