2 Object Storage Classicのコンテナの管理
このセクションでは、Oracle Cloud Infrastructure Object Storage Classicでのコンテナの管理に関するドキュメントを提供します。
トピック:
コンテナ管理の標準的なワークフロー
次の表をコンテナ管理のワークフローのガイドとして使用します。 まだサービスをサブスクライブしていない、または設定していない場合は、「Object Storage Classicをスタート・ガイドためのワークフロー」を参照してください。
| タスク | 説明 | 詳細情報 |
|---|---|---|
|
サービスへのアクセス |
使用可能なインタフェースのいずれかを使用してサービスにアクセスします。 |
|
|
認証トークンの生成 |
REST APIインタフェースを介してサービスにアクセスしている場合は、認証トークンを生成します。 Javaライブラリを介してサービスにアクセスしている場合、認証トークンは自動的に生成、適用されます。 | |
|
コンテナの作成 |
コンテナを作成してデータを整理します。 |
|
|
コンテナの削除 |
不要になった空のコンテナを削除します。 |
|
|
コンテナ・メタデータの更新 |
カスタム・メタデータまたは特殊なメタデータをコンテナに設定します。 |
コンテナの作成
コンテナは、Oracle Cloud Infrastructure Object Storage Classicに格納されたデータを整理する方法を提供する格納コンパートメントです。
standardストレージ・クラス(archiveストレージ・クラスとは対照的)になります。
注意:
最初のコンテナを作成する前に、アカウントのレプリケーション・ポリシー・セットを確認してください。 「Object Storage Classicインスタンスのレプリケーション・ポリシーについて」を参照してください。| インタフェース | 資料 |
|---|---|
|
Webコンソール (Oracle Cloud at Customerでは使用できません) |
Webコンソールを使用したコンテナの作成を参照してください。 |
|
RESTful API |
参照:
|
|
Javaライブラリ |
「Oracle Cloud Infrastructure Object Storage ClassicのJava APIリファレンス」の |
|
ファイル転送マネージャAPI |
「Oracle Cloud Infrastructure Object Storage Classic用のJava APIリファレンスFile Transfer Manager」の |
|
ファイル転送マネージャCLI |
「Oracle Cloud Infrastructure Object Storage Classicのコマンドライン・リファレンス」の「コンテナの作成」を参照してください。 |
archiveコンテナを作成するには、X-Storage-ClassヘッダーをArchiveに設定する必要があります。 詳細は、「アーカイブ・コンテナの作成」を参照してください。 (Oracle Cloud at Customerでは使用できません)
Webコンソールを使用したコンテナの作成
(Oracle Cloud at Customerでは使用できません)- Oracle Cloud Infrastructure Object Storage Classicコンソールにサインインします。
- 「Create Container」をクリックします。
「コンテナの作成」ダイアログ・ボックスが表示されます。
- コンテナの名前を入力します。
注意:
コンテナ名が「文字の制限」で説明されている入力制限に準拠していることを確認してください。 - 「ストレージ・クラス」フィールドで
Standardを選択します。 - コンテナのレプリケーション・ポリシーを設定するには、「Webコンソールを使用したコンテナ固有のポリシーの設定」を参照してください。
注意:
このオプションは、2018年3月以降に作成されたアカウントでのみ使用できます。 - 「作成」をクリックします。
コンテナが作成され、コンソールに表示されます。
REST APIを使用したコンテナの作成
cURLコマンド構文
curl -v -X PUT \
-H "X-Auth-Token: token" \
accountURL/containerName
tokenは、以前にOracle Cloud Infrastructure Object Storage Classicから取得した認証トークンです。 「REST API使用時のアクセス認証」を参照してください。accountURLの構文については、「Oracle Cloud Infrastructure Object Storage ClassicリソースのREST URLについて」を参照してください。containerNameは、作成されるコンテナの名前です。注意:
コンテナ名が「文字の制限」で説明されている入力制限に準拠していることを確認してください。
注意:
Oracle Cloud Infrastructure Object Storage ClassicにREST APIリクエストを送信すると、コンテナ名、オブジェクト名、メタデータ値の非ASCII文字はすべてURLエンコードされている必要があります。 たとえば、my containerはmy%20containerとしてエンコードする必要があります。%20はスペース文字のHTMLエンコードです。 同様に、my Über Containerはmy%20%C3%9Cber%20Containerとしてエンコードする必要があります。%20はスペース文字を表し、%C3%9CはÜ文字です。
HTTPレスポンス・コード
- 成功:
201 Created - 失敗: 「Oracle Cloud Infrastructure Object Storage Classicのエラー・コード・リファレンス」を参照してください
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 PUT \ -H "X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b" \ https://acme.storage.oraclecloud.com/v1/Storage-acme/FirstContainer次に、このコマンドの出力例を示します:
> PUT /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_tkb4fdf39c92e9f62cca9b7c196f8b6e6b > < HTTP/1.1 201 Created < Date: Fri, 06 Mar 2015 10:34:20 GMT < Content-Length: 0 < Content-Type: text/html; charset=UTF-8 < X-Trans-Id: tx23a1084b8c674fdeae8d4-0054f982ac < 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" \ https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365/FirstContainer次に、このコマンドの出力例を示します:
> PUT /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_tkb4fdf39c92e9f62cca9b7c196f8b6e6b > < HTTP/1.1 201 Created < Date: Fri, 06 Mar 2015 10:34:20 GMT < Content-Length: 0 < Content-Type: text/html; charset=UTF-8 < X-Trans-Id: tx23a1084b8c674fdeae8d4-0054f982ac < Cache-Control: no-cache < Pragma: no-cache < Content-Language: en
コンテナ内のレプリケーション・ポリシーを設定するには、「REST APIを使用したコンテナ固有のポリシーの設定」を参照してください。
コンテナの詳細については、「コンテナ・メタデータの取得」を参照してください。
Archiveコンテナの作成
このトピックはOracle Cloud at Customerには適用されません。
X-Storage-Classメタデータ・フィールドがArchiveに設定されているコンテナは、Archiveコンテナと呼ばれます。 Archiveコンテナを使用して、しばらくの間はアクセスされないデータや、めったにアクセスされないデータを格納できます。 サービス管理者ロールを持つすべてのユーザーがArchiveコンテナを作成できます。
Archiveコンテナを作成するには、次のインタフェースを使用します。
| インタフェース | 資料 |
|---|---|
|
Webコンソール |
Webコンソールを使用したArchiveコンテナの作成を参照してください。 |
|
RESTful API |
参照:
|
|
ファイル転送マネージャAPI |
「Oracle Cloud Infrastructure Object Storage Classic用のJava APIリファレンスFile Transfer Manager」の |
注意:
X-Storage-Classを設定できるのは、新しいコンテナを作成する場合のみです。X-Storage-Classを設定した後に変更することはできません。- Java APIを使用して
Archiveコンテナを作成することはできません。
Archiveコンテナでサポートされていない機能
Archiveコンテナではサポートされません。
- オブジェクトの一括作成
- オブジェクトの一括削除
X-Delete-AtおよびX-Delete-Afterヘッダーを使用したオブジェクトの自動削除のスケジューリング- 地理レプリケーション
- コンテナ固有のレプリケーション・ポリシーの設定
Webコンソールを使用したArchiveコンテナの作成
- Oracle Cloud Infrastructure Object Storage Classicコンソールにサインインします。
- 「Create Container」をクリックします。
「Create Container」ダイアログが表示されます。
- コンテナの名前を入力します。
注意:
コンテナ名が「文字の制限」で説明されている入力制限に準拠していることを確認してください。 - 「Storage Class」フィールドで
「Archive」を選択します。 - 「作成」をクリックします。
コンテナが作成され、コンソールに表示されます。
REST APIを使用したArchiveコンテナの作成
cURLコマンド構文
curl -v -X PUT \
-H "X-Auth-Token: token" \
-H "X-Storage-Class: Archive" \
accountURL/containerName
tokenは、以前にOracle Cloud Infrastructure Object Storage Classicから取得した認証トークンです。 「REST API使用時のアクセス認証」を参照してください。accountURLの構文については、「Oracle Cloud Infrastructure Object Storage ClassicリソースのREST URLについて」を参照してください。containerNameは、作成されるコンテナの名前です。注意:
コンテナ名が「文字の制限」で説明されている入力制限に準拠していることを確認してください。
注意:
Oracle Cloud Infrastructure Object Storage ClassicにREST APIリクエストを送信すると、コンテナ名、オブジェクト名、メタデータ値の非ASCII文字はすべてURLエンコードされている必要があります。 たとえば、my containerはmy%20containerとしてエンコードする必要があります。%20はスペース文字のHTMLエンコードです。 同様に、my Über Containerはmy%20%C3%9Cber%20Containerとしてエンコードする必要があります。%20はスペース文字を表し、%C3%9CはÜ文字です。
HTTPレスポンス・コード
- 成功:
201 Created - 失敗: 「Oracle Cloud Infrastructure Object Storage Classicのエラー・コード・リファレンス」を参照してください
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 PUT \ -H "X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b" \ -H "X-Storage-Class: Archive" https://acme.storage.oraclecloud.com/v1/Storage-acme/firstArchiveContainer次に、このコマンドの出力例を示します:
> PUT /v1/Storage-acme/firstArchiveContainer HTTP/1.1 > User-Agent: curl/7.29.0 > Host: acme.storage.oraclecloud.com:443 > Accept: */* > X-Auth-Token: AUTH_tk1ff0554c1fefff9209696d63553722fd > X-Storage-Class: Archive > < HTTP/1.1 201 Created < X-Trans-Id: tx1d8e9739df4a47bb847e0-005582875bga < Date: Thu, 18 Jun 2015 08:54:51 GMT < Content-Type: text/html;charset=UTF-8 < Content-Length: 0 <
- 「RESTエンドポイント(永続的)」フィールドから取得したサービス永続RESTエンドポイントURLの使用:
注意:
このcURLコマンドの例は、2017年11月以降に作成されたアカウントに適用されます。curl -v -X PUT \ -H "X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b" \ -H "X-Storage-Class: Archive" https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365/firstArchiveContainer次に、このコマンドの出力例を示します:
> PUT /v1/Storage-7b16fede61e1417ab83eb52e06f0e365/firstArchiveContainer HTTP/1.1 > User-Agent: curl/7.29.0 > Host: storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com:443 > Accept: */* > X-Auth-Token: AUTH_tk1ff0554c1fefff9209696d63553722fd > X-Storage-Class: Archive > < HTTP/1.1 201 Created < X-Trans-Id: tx1d8e9739df4a47bb847e0-005582875bga < Date: Thu, 18 Jun 2015 08:54:51 GMT < Content-Type: text/html;charset=UTF-8 < Content-Length: 0 <
Archiveコンテナの詳細の取得の詳細は、「コンテナ・メタデータの取得」を参照してください。
Archiveコンテナ内のオブジェクトの作成の詳細は、「オブジェクトの作成」を参照してください。
コンテナのリスト
アカウント内のすべてのコンテナをリストできます。
アイデンティティ・ドメイン内のすべてのユーザーがこのタスクを実行できます。
| インタフェース | 資料 |
|---|---|
|
Webコンソール (Oracle Cloud at Customerでは使用できません) |
Webコンソールを使用したコンテナの一覧表示を参照してください。 |
|
RESTful API |
参照:
|
|
Javaライブラリ |
「Oracle Cloud Infrastructure Object Storage ClassicのJava APIリファレンス」の |
|
ファイル転送マネージャAPI |
「Oracle Cloud Infrastructure Object Storage Classic用のJava APIリファレンスFile Transfer Manager」の |
|
ファイル転送マネージャCLI |
「Oracle Cloud Infrastructure Object Storage Classicのコマンドライン・リファレンス」の「コンテナのリスト表示」を参照してください。 |
Webコンソールを使用したコンテナの一覧表示
(Oracle Cloud at Customerでは使用できません)Oracle Cloud Infrastructure Object Storage Classicコンソールにサインインします。 コンテナのリストが表示されます。
REST APIを使用したコンテナの一覧表示
コンテナは、memcmp()を使用して辞書順にソートされます。 次の問合せパラメータのいずれかを使用してリストをフィルタしないかぎり、すべてのコンテナ(デフォルトでは、10000個まで)がリストに戻されます。
limit: リストされるコンテナの数を、指定値に限定します。 デフォルトおよび最大値は、10000です。marker: 指定された文字列より大きい名前のコンテナを返します。end_marker: 指定された文字列より小さい名前のコンテナを返します。format: 返される各コンテナに関する拡張情報をxmlまたはjson形式で返します(REST APIのみ)。
cURLコマンド構文
curl -v -X GET \
-H "X-Auth-Token: token" \
accountURL[?query_parameter=value]
tokenは、以前にOracle Cloud Infrastructure Object Storage Classicから取得した認証トークンです。 「REST API使用時のアクセス認証」を参照してください。accountURLの構文については、「Oracle Cloud Infrastructure Object Storage ClassicリソースのREST URLについて」を参照してください。query_parameter=valueは、オプションのフィルタリング・パラメータです。
注意:
Oracle Cloud Infrastructure Object Storage ClassicにREST APIリクエストを送信すると、コンテナ名、オブジェクト名、メタデータ値の非ASCII文字はすべてURLエンコードされている必要があります。 たとえば、my containerはmy%20containerとしてエンコードする必要があります。%20はスペース文字のHTMLエンコードです。 同様に、my Über Containerはmy%20%C3%9Cber%20Containerとしてエンコードする必要があります。%20はスペース文字を表し、%C3%9CはÜ文字です。
HTTPレスポンス・コード
- 成功:
200 OK注意:
コンテナがない場合のHTTPレスポンス・コードは、204 OKです。 - 失敗: 「Oracle Cloud Infrastructure Object Storage Classicのエラー・コード・リファレンス」を参照してください
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)が表示されます。
- 「RESTエンドポイント」フィールドから取得したRESTエンドポイントURLを使用する方法:
curl -v -X GET \ -H "X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b" \ https://acme.storage.oraclecloud.com/v1/Storage-acme?limit=15このコマンドは、最初の15のコンテナ(辞書順でソート)を、指定されたアカウントにリストします。
次に、このコマンドの出力例を示します:
> GET /v1/Storage-acme 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_tk6403794c218a709d1c6c5a76444d01f6 > < HTTP/1.1 200 OK < Date: Fri, 06 Mar 2015 10:38:15 GMT < Content-Length: 109 < X-Account-Container-Count: 3 < Accept-Ranges: bytes < X-Account-Object-Count: 843 < X-Account-Bytes-Used: 10304761355 < X-Timestamp: 1412823447.62495 < X-Account-Meta-Test5: test1 < X-Account-Meta-Quota-Bytes: 107374182400 < Content-Type: text/plain; charset=utf-8 < X-Account-Meta-Test: test < X-Account-Meta-Test1: test1 < X-Trans-Id: tx29052c64fe384fc690ccc-0054f98397 < Cache-Control: no-cache < Pragma: no-cache < Content-Language: en < FirstContainer hello lab - 「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?limit=15このコマンドは、最初の15のコンテナ(辞書順でソート)を、指定されたアカウントにリストします。
次に、このコマンドの出力例を示します:
> GET /v1/Storage-7b16fede61e1417ab83eb52e06f0e365 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_tk6403794c218a709d1c6c5a76444d01f6 > < HTTP/1.1 200 OK < Date: Fri, 06 Mar 2015 10:38:15 GMT < Content-Length: 109 < X-Account-Container-Count: 3 < Accept-Ranges: bytes < X-Account-Object-Count: 843 < X-Account-Bytes-Used: 10304761355 < X-Timestamp: 1412823447.62495 < X-Account-Meta-Test5: test1 < X-Account-Meta-Quota-Bytes: 107374182400 < Content-Type: text/plain; charset=utf-8 < X-Account-Meta-Test: test < X-Account-Meta-Test1: test1 < X-Trans-Id: tx29052c64fe384fc690ccc-0054f98397 < Cache-Control: no-cache < Pragma: no-cache < Content-Language: en < FirstContainer hello lab
コンテナ固有のポリシーの設定
このトピックはOracle Cloud at Customerには適用されません。
| インタフェース | 資料 |
|---|---|
|
Webコンソール |
「Webコンソールを使用したコンテナ固有のポリシーの設定」を参照してください。 |
|
RESTful API |
|
|
ファイル転送マネージャCLI |
「Oracle Cloud Infrastructure Object Storage Classicのコマンドライン・リファレンス」の「コンテナ固有のレプリケーション・ポリシーの設定」を参照してください。 |
|
ファイル転送マネージャAPI |
「Oracle Cloud Infrastructure Object Storage Classic用のJava APIリファレンスFile Transfer Manager」の |
Webコンソールを使用したコンテナ固有のポリシーの設定
重要:
このトピックは、2018年3月以降に作成されたアカウントに適用されます。これらのアカウントでは、アカウント・レベルのレプリケーション・ポリシーがデフォルトでanyに設定されています。
- Oracle Cloud Infrastructure Object Storage Classicコンソールにサインインします。
- 「Create Container」をクリックします。
「コンテナの作成」ダイアログ・ボックスが表示されます。
- コンテナの名前を入力します。
注意:
コンテナ名が「文字の制限」で説明されている入力制限に準拠していることを確認してください。 - 「ストレージ・クラス」フィールドで
Standardを選択します。 - コンテナを作成する必要がある「データ・センター」フィールドでデータセンターを選択します。
コンテナが作成されるデータセンターは、「ソース」データセンターです。
- 「上級」の下の「データセンターにレプリケート」を選択して、目的のデータセンターのコンテナを複製します。
コンテナを複製するために選択されたデータセンターは、「ターゲット」データセンターです。 コンテナに複数のターゲットDCを選択できます。
- 「作成」をクリックします。
コンテナはソース・データ・センターで作成され、Webコンソールに表示されます。
ターゲット・データ・センターでレプリケートされたコンテナの表示
- Oracle Cloud Infrastructure Object Storage Classicコンソールにサインインします。
- 「コンテナ」ペインでターゲット・データ・センターを選択します。
あなたのアカウントで作成されたコンテナのリストが表示されます。
- ソース・データ・センターで作成したコンテナを識別します。
- コンテナを選択します。
次のメッセージが表示されます:
You are currently viewing a READ ONLY copy of this container. Switch to source environment to edit this container.
REST APIを使用したコンテナ固有のポリシーの設定
このトピックはOracle Cloud at Customerには適用されません。
このタスクは、サービス管理者ロールを持つすべてのユーザーが実行できます。
注意:
archiveコンテナのレプリケーション・ポリシーは設定できません。- コンテナを作成するとき、またはコンテナが空のときに、コンテナ・レベルのレプリケーション・ポリシーを設定できます。
REST APIを使用して同じリージョン内のデータセンターにコンテナ固有のポリシーを設定する
コンテナのソースDCとGeoreplication DCをサービス・インスタンスのサブセットに設定することができます。 たとえば、サービス・インスタンスのプライマリDCがus2でgeoreplication DCがus6とuscom-central-1の場合、コンテナのプライマリDCはus6、us2、またはuscom-central-1になります。 残りのDCの一方または両方をコンテナの複製DCとして選択することができます。 リクエスト本文のJSONファイルのsourceRegionおよびtargetRegionsパラメータにコンテナのプライマリDC URLと複製DC URLをそれぞれ指定します。
レプリケーション・ポリシーを設定したコンテナへの書き込みリクエストは、グローバル名前空間URLではなく、DC固有のRESTエンドポイントURLに送信する必要があります。
DC固有のRESTエンドポイントURLの形式は次のとおりです:
https://dataCenterCode.storage.oraclecloud.com/v1/Storage-identityDomainID
例 : https://us2.storage.oraclecloud.com/Storage-myDomain
REST APIを使用して異なるリージョンにコンテナ固有のポリシーを設定する
コンテナの複製ポリシーを指定するには、サービス・インスタンスのプライマリDCとジオコーピングDCが配置されているリージョン以外のデータセンターを選択します。 たとえば、サービス・インスタンスのプライマリDCとジオコーピングDCが米国リージョンのus2とus6である場合、コンテナを複製する米国以外のリージョンにあるデータセンター、たとえばem2を選択できます。 リクエスト本文のJSONファイルのexternalTargetRegionsパラメータに外部コンテナのURLを指定して、コンテナのオブジェクトをレプリケートする必要がある外部コンテナを指定します。 コンテナに複数の外部複製DCを指定できます。
コンテナが外部コンテナからオブジェクトを複製する宛先である場合は、リクエスト本文JSONファイルのexternalSourceRegionsパラメータに外部コンテナのURLを指定します。 コンテナは、複数のソース・コンテナからのオブジェクトのレプリケーションの宛先にすることができます。
注意:
コンテナのレプリケーション・ポリシーを別のリージョンに設定する場合は、最初にexternalSourceRegionsパラメータを使用してターゲット・リージョンのレプリケーション・ポリシーを設定し、次にexternalTargetRegionsパラメータを使用してソース・リージョンのレプリケーションを設定します。
重要:
コンテナのレプリケーション・ポリシーを別のリージョンに設定するには、リクエスト本文JSONファイルで指定されたRESTエンドポイントURLがGUID形式であることを確認します。 例えば :https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365/myContainer。
フレンドリ名形式は使用しないでください。 例えば : https://acme.storage.oraclecloud.com/v1/Storage-acme/myContainer。 フレンドリ名のREST Endpoint URLが変更され、無効なレプリケーション・ポリシーにつながる可能性があります。
リクエスト本文JSONファイルの作成
次のテンプレートを使用してリクエスト本文のJSONファイルを作成し、ホストに保存します。
{
"sourceRegion": {
"name": "primary_DC_code",
"url": "primary_DC_url"},
"targetRegions": [{
"name": "replication_DC_code",
"url": "replication_DC_url"}],
"externalSourceRegions": [{
"name": "external",
"url": "external_source_url"}],
"externalTargetRegions": [{
"name": "external",
"url": "external_target_url"}]
}-
primary_DC_codeは、コンテナのプライマリDCのデータセンター・コードです。 -
primary_DC_urlは、コンテナの主DCにあるコンテナのURLです。 これはオプションのパラメータです。 -
replication_DC_codeは、コンテナのレプリケーションDCのデータセンター・コードです。 -
replication_DC_urlは、コンテナのレプリケーションDCにあるコンテナのレプリケーションのURLです。 これはオプションのパラメータです。 -
external_source_urlは、オブジェクトがコンテナに複製される外部リージョン内のコンテナのURLです。 -
external_target_urlは、コンテナ内のオブジェクトを複製する必要がある外部リージョン内のコンテナのURLです。
注意:
パラメータprimary_DC_urlとreplication_DC_urlはオプションです。 データセンター・コードを提供するだけで、コマンドの通常の作業には十分です。
-
次のシナリオでは、コンテナ
myContainerのリクエスト 本文JSONファイルの例:-
サービス・インスタンスに
us2プライマリDCがあります。 -
あなたのサービス・インスタンスには、
us6とuscom-central-1複製DCがあります。 -
あなたのコンテナのプライマリDCは
us6です。 -
コンテナの複製DCは、同じリージョン内の
us2とuscom-central-1です。
https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365/myContainerの場合、<fooN>はstorage-7b16fede61e1417ab83eb52e06f0e365、<barN>は7b16fede61e1417ab83eb52e06f0e365です。{ "sourceRegion": { "name": "us6", "url": "https://<foo1>.storage.oraclecloud.com/v1/Storage-<bar1>/myContainer"}, "targetRegions": [{ "name": "us2", "url": "https://<foo2>.storage.oraclecloud.com/v1/Storage-<bar2>/myContainer"}, { "name": "uscom-central-1", "url": "https://<foo3>.storage.oraclecloud.com/v1/Storage-<bar3>/myContainer"}], "externalSourceRegions": [], "externalTargetRegions": [] } -
-
次のシナリオでは、コンテナ
mySecondContainerのリクエスト 本文JSONファイルの例:-
サービス・インスタンスには、
us2primary DCとus6replication DCがあります。 -
あなたのコンテナのプライマリDCは
us2です。 -
コンテナのレプリケーションDCは、同じリージョン内の
us6です。 -
コンテナは、異なるリージョンにあるコンテナ
externalSourceContainer1とexternalSourceContainer2からの複製先です。 -
コンテナ内のオブジェクトは、別のリージョンのデータセンター内のコンテナ
externalTargetContainerに複製されます。
https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365/myContainerの場合、<fooN>はstorage-7b16fede61e1417ab83eb52e06f0e365、<barN>は7b16fede61e1417ab83eb52e06f0e365です。{ "sourceRegion": { "name": "us2", "url": "https://<foo4>.storage.oraclecloud.com/v1/Storage-<bar4>/mySecondContainer"}, "targetRegions": [{ "name": "us6", "url": "https://<foo5>.storage.oraclecloud.com/v1/Storage-<bar5>/mySecondContainer"}], "externalSourceRegions": [{ "name": "external", "url": "https://<foo6>.storage.oraclecloud.com/v1/Storage-<bar6>/externalSourceContainer1"}, { "name": "external", "url": "https://<foo7>.storage.oraclecloud.com/v1/Storage-<bar7>/externalSourceContainer2"}], "externalTargetRegions": [{ "name": "external", "url": "https://<foo8>.storage.oraclecloud.com/v1/Storage-<bar8>/externalTargetContainer"}] } -
cURLコマンド構文:コンテナのレプリケーション・ポリシーを指定する
- 空のコンテナのレプリケーション・ポリシーを指定するには:
curl -v -X POST \ -H "X-Auth-Token: token" \ -H "Content-Type: application/json" \ -d "@file" \ accountURL/containerName?repPolicy - コンテナの作成中にレプリケーション・ポリシーを指定するには:
curl -v -X PUT \ -H "X-Auth-Token: token" \ -d "@file" \ accountURL/containerName?repPolicy - コンテナのレプリケーション・ポリシーを読み取るには:
curl -v -X GET \ -H "X-Auth-Token: token" \ accountURL/containerName?repPolicy
tokenは、以前にOracle Cloud Infrastructure Object Storage Classicから取得した認証トークンです。 「REST API使用時のアクセス認証」を参照してください。fileは、必要なコンテナ・レベルのポリシーがJSON形式で格納されているファイルの完全なパスと名前です。accountURLの構文については、「Oracle Cloud Infrastructure Object Storage ClassicリソースのREST URLについて」を参照してください。containerNameは、レプリケーション・ポリシーを設定する必要があるコンテナです。
注意:
Oracle Cloud Infrastructure Object Storage ClassicにREST APIリクエストを送信すると、コンテナ名、オブジェクト名、メタデータ値の非ASCII文字はすべてURLエンコードされている必要があります。 たとえば、my containerはmy%20containerとしてエンコードする必要があります。%20はスペース文字のHTMLエンコードです。 同様に、my Über Containerはmy%20%C3%9Cber%20Containerとしてエンコードする必要があります。%20はスペース文字を表し、%C3%9CはÜ文字です。
HTTPレスポンス・コード
- 成功:
- レプリケーション・ポリシーでコンテナを更新するとき:
204 No Content - コンテナを作成し、レプリケーション・ポリシーを指定するとき:
201 Created - コンテナのレプリケーション・ポリシーを読み込むとき:
200 OK
- レプリケーション・ポリシーでコンテナを更新するとき:
- 失敗: 「Object Storage Classicのエラー・コード・リファレンス」を参照してください
cURLコマンド例
- このコマンドは、コンテナ
FirstContainerのレプリケーション・ポリシーを設定します。curl -v -X POST \ -H "X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b" \ -H "Content-Type: application/json" \ -d "@requestbody.json" \ https://acme.storage.oraclecloud.com/v1/Storage-acme/FirstContainer?repPolicy次に、このコマンドの出力例を示します:
> POST /v1/Storage-acme/FirstContainer?repPolicy HTTP/1.1 > User-Agent: curl/7.49.1 > Host: acme.storage.oraclecloud.com > Accept: */* > Content-Type: application/json > Content-Length: 489 > X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b > * upload completely sent off: 489 out of 489 bytes < HTTP/1.1 204 No Content < Date: Fri, 10 Nov 2017 06:32:55 GMT < Content-Type: text/html;charset=UTF-8 < X-Trans-Id: txe8869b3edea348e5b49eb-0054f99743 - このコマンドは、コンテナ
SecondContainerを作成中にレプリケーション・ポリシーを指定します。curl -v -X PUT \ -H "X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b" \ -d "@requestbody.json" \ https://acme.storage.oraclecloud.com/v1/Storage-acme/SecondContainer?repPolicy次に、このコマンドの出力例を示します:
> PUT /v1/Storage-acme/SecondContainer?repPolicy HTTP/1.1 > User-Agent: curl/7.49.1 > Host: acme.storage.oraclecloud.com > Accept: */* > X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b > < HTTP/1.1 201 Created < Date: Thu, 09 Nov 2017 10:03:18 GMT < Content-Type: text/html; charset=UTF-8 < X-Trans-Id: txe8869b3edea348e5b49eb-0054f99678 < X-Last-Modified-Timestamp: 1510221797.90473 < Cache-Control: no-cache < Pragma: no-cache < Content-Language: en - このコマンドは、コンテナ
FirstContainerのレプリケーション・ポリシーを表示します:curl -v -X GET \ -H "X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b" \ https://acme.storage.oraclecloud.com/v1/Storage-acme/FirstContainer?repPolicy次に、このコマンドの出力例を示します:
> GET /v1/Storage-acme/FirstContainer?repPolicy HTTP/1.1 > User-Agent: curl/7.49.1 > Host: acme.storage.oraclecloud.com > Accept: */* > X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b > < HTTP/1.1 200 OK < < Date: Fri, 10 Nov 2017 06:17:44 GMT < Content-Type: application/json;charset=UTF-8 < X-Trans-Id: txe8869b3edea348e5b49eb-0054f99838 { "mode": "ACTIVE_PASSIVE", "sourceRegion": { "name": "us2", "url": "https://<foo9>.storage.oraclecloud.com/v1/Storage-<bar9>/FirstContainer" }, "targetRegions": [{ "name": "us6", "url": "https://<foo10>.storage.oraclecloud.com/v1/Storage-<bar10>/FirstContainer" }], "externalSourceRegions": [{ "name": "external", "url": "https://<foo11>.storage.oraclecloud.com/v1/Storage-<bar11>/ExternalSourceContainer" }], "externalTargetRegions": [{ "name": "external", "url": "https://<foo12>.storage.oraclecloud.com/v1/Storage-<bar12>/ExternalTargetContainer" }] * STATE: PERFORM => DONE handle 0x600057870; line 1955 (connection #0) * multi_done * Connection #0 to host left intact }
出力例には、ソース・リージョンとターゲット・リージョンの設定に使用されるGUIDベースのURLが表示されています。 コンテナのGUIDベースのURLが
https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365/myContainerの場合、<fooN>はstorage-7b16fede61e1417ab83eb52e06f0e365、<barN>は7b16fede61e1417ab83eb52e06f0e365です。
コンテナの削除
このタスクは、サービス管理者ロールを持つすべてのユーザーが実行できます。
| インタフェース | 資料 |
|---|---|
|
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リファレンスの |
|
ファイル転送マネージャCLI |
「Oracle Cloud Infrastructure Object Storage Classicのコマンドライン・リファレンス」の「コンテナの削除」を参照してください。 |
|
ファイル転送マネージャAPI |
「Oracle Cloud Infrastructure Object Storage Classic用のJava APIリファレンスFile Transfer Manager」の |
単一操作でのコンテナ内の複数のオブジェクトの削除の詳細は、「オブジェクトの一括削除」を参照してください。
Webコンソールを使用したコンテナの削除
(Oracle Cloud at Customerでは使用できません)- Oracle Cloud Infrastructure Object Storage Classicコンソールにサインインします。
コンテナのリストが表示されます。
- 削除するコンテナを特定します。
- コンテナ名の左側にある「delete」をクリックします。
「delete」ボタンは空のコンテナにのみ表示されます。
次のメッセージが表示されます。
Are you sure want to delete this container?
- 「OK」をクリックします。
コンテナが削除されます。
REST APIを使用したコンテナの削除
コンテナを削除する前に、コンテナの中のすべてのオブジェクトが先に削除されている必要があります。 コンテナにオブジェクトが含まれているかどうかを確認するには、HEADリクエストをコンテナURLに送信します。
cURLコマンド構文
curl -v -X DELETE \
-H "X-Auth-Token: token" \
accountURL/containerName
tokenは、以前にOracle Cloud Infrastructure Object Storage Classicから取得した認証トークンです。 「REST API使用時のアクセス認証」を参照してください。accountURLの構文については、「Oracle Cloud Infrastructure Object Storage ClassicリソースのREST URLについて」を参照してください。containerNameは、削除するコンテナの名前です。
注意:
Oracle Cloud Infrastructure Object Storage ClassicにREST APIリクエストを送信すると、コンテナ名、オブジェクト名、メタデータ値の非ASCII文字はすべてURLエンコードされている必要があります。 たとえば、my containerはmy%20containerとしてエンコードする必要があります。%20はスペース文字のHTMLエンコードです。 同様に、my Über Containerはmy%20%C3%9Cber%20Containerとしてエンコードする必要があります。%20はスペース文字を表し、%C3%9CはÜ文字です。
HTTPレスポンス・コード
- 成功:
204 No Content - 失敗: 「Oracle Cloud Infrastructure Object Storage Classicのエラー・コード・リファレンス」を参照してください
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)が表示されます。
- 「RESTエンドポイント」フィールドから取得したRESTエンドポイントURLを使用する方法:
curl -v -X DELETE \ -H "X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b" \ https://acme.storage.oraclecloud.com/v1/Storage-acme/FirstContainer次に、このコマンドの出力例を示します:> DELETE /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_tkb4fdf39c92e9f62cca9b7c196f8b6e6b > < HTTP/1.1 204 No Content < Date: Fri, 06 Mar 2015 10:43:38 GMT < Content-Length: 0 < Content-Type: text/html; charset=UTF-8 < X-Trans-Id: txc100a7408d564f82916fb-0054f984da < 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次に、このコマンドの出力例を示します:> DELETE /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_tkb4fdf39c92e9f62cca9b7c196f8b6e6b > < HTTP/1.1 204 No Content < Date: Fri, 06 Mar 2015 10:43:38 GMT < Content-Length: 0 < Content-Type: text/html; charset=UTF-8 < X-Trans-Id: txc100a7408d564f82916fb-0054f984da < Cache-Control: no-cache < Pragma: no-cache < Content-Language: en <
サーバー側暗号化の有効化
トピック
サーバー側の暗号化について
サービス・インスタンスのコンテナを構成して、暗号化された形式でアップロードされたすべてのデータを格納できます。 暗号化と復号化は、サーバーで完全に行われます。 そのようなコンテナからオブジェクトをダウンロードすると、オブジェクトはサーバーで復号化され、配信されます。 サーバー側の暗号化では、AES-256の暗号化アルゴリズムを使用します。
X-Server-Side-Encryptionメタデータ・ヘッダーを追加することで、コンテナの暗号化を有効化できます。 このヘッダーには、次の値のいずれかを指定できます:
BASE_ENCRYPTION: コンテナ内のデータを暗号化する必要があることを示します。NONE: サーバー側暗号化がコンテナに対して有効でないことを示します。 これは、このヘッダーを完全に省略するのと同じです。
特定のコンテナに独自のBase64エンコードのAES-256マスター暗号化キーを指定します。 X-Server-Side-Encryptionメタデータ・ヘッダーに加えて、X-Server-Side-Encryption-Container-Keyメタデータ・ヘッダーを含め、マスター・キーを指定する必要があります。
X-Server-Side-Encryption-Container-Keyヘッダーを指定しない場合、コンテナは、Oracleによってランダムに生成されるマスター・キーを使用して暗号化されます。
注意:
サーバー側暗号化を有効化できるのは、コンテナの作成時のみです。
サーバー側の暗号化は、Oracleのすべてのデータ・リージョンで使用できるわけではありません。 Webコンソールの「コンテナを作成」ダイアログ・ボックスの「上級」の下に「暗号化の有効化」オプションが表示されない場合、この機能はデータ・リージョンで使用できません。
既存のコンテナに対してこの機能を有効または無効にすることはできません。 サーバー側の暗号化が設定されると、この機能は変更できません。
Webコンソールを使用したサーバー側暗号化の有効化
このトピックはOracle Cloud at Customerには適用されません。
注意:
サーバー側の暗号化は、コンテナの作成中にのみ有効にでき、後では有効にできません。- Oracle Cloud Infrastructure Object Storage Classicコンソールにサインインします。
- 「Create Container」をクリックします。
「コンテナの作成」ダイアログ・ボックスが表示されます。
- コンテナの名前を入力します。
コンテナ作成中の文字制限のリストについては、「文字の制限」を参照してください。
- コンテナのストレージ・クラスの選択に基づいて、「ストレージ・クラス」フィールドで
StandardまたはArchiveを選択します。 - コンテナに格納されているデータのサーバー側の暗号化を有効化するには、「暗号化の有効化」を選択します。
コンテナに格納されているすべてのデータは、Oracleで指定されるキーを使用して暗号化されます。
- マスター暗号化キーを使用してサーバー側暗号化を有効化するには、次のようにします:
- OpenSSLツールキットを使用してAES 256暗号化キーを生成します。
openssl enc -aes256 -k password -P例:
openssl enc -aes256 -k mypassword -P出力:
salt=ADCA338FB4594CC6 key=08A8C5A2C81EB0508AAA1EAB7C81BC7AC9747E3E752E04FECAEE8D09E83A8C09 iv=4586BFB397A9CE3FFB7F90D14BF6B506
- Base64形式でキーをエンコードします。
echo 'value_from_key_field' | xxd -r -p | base64例:
echo "08A8C5A2C81EB0508AAA1EAB7C81BC7AC9747E3E752E04FECAEE8D09E83A8C09" | xxd -r -p | base64出力:
CKjFosgesFCKqh6rfIG8esl0fj51LgT+yu6NCeg6jAk= - コンソールの「顧客マスター・キーありのサーバー側暗号化」フィールドに、Base64エンコードされたAES-256暗号化キーを入力します。
- OpenSSLツールキットを使用してAES 256暗号化キーを生成します。
- 「作成」をクリックします。
コンテナが作成され、コンソールに表示されます。
Oracleで提供されたキーを使用したサーバー側の暗号化の有効化
サーバー側暗号化を有効にするには、コンテナを作成して、X-Server-Side-Encryptionメタデータ・ヘッダーに割り当てます。 このヘッダーを持つコンテナに書き込まれたオブジェクトはすべて暗号化されます。 curl -v -X PUT \
-H "X-Auth-Token: token" \
-H "X-Server-Side-Encryption: BASE_ENCRYPTION" \
accountURL/containerNametokenは、Oracle Cloud Infrastructure Object Storage Classicから先に取得した認証トークンです。 「REST API使用時のアクセスの認証」を参照してください。accountURLの構文については、「Oracle Cloud Infrastructure Object Storage ClassicリソースのREST URLについて」を参照してください。containerNameは、作成されるコンテナの名前です。コンテナ作成中の文字制限のリストについては、「文字の制限」を参照してください。
X-Server-Side-Encryptionは、サーバー側暗号化を有効にするためのヘッダーです。
例:
コンテナMyEncryptedContを作成し、サーバー側暗号化メタデータ・ヘッダーを割り当てます。
curl -v -X PUT \
-H "X-Auth-Token: AUTH_tk57dee23521d6e4d809deeffa6bd23cd6"
-H "X-Server-Side-Encryption: BASE_ENCRYPTION"
https://acme.storage.oraclecloud.com/v1/Storage-acme/MyEncryptedCont 次に、このコマンドの出力例を示します:
PUT /v1/Storage-acme/MyEncryptedCont 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-Server-Side-Encryption: BASE_ENCRYPTION < HTTP/1.1 201 Created < Date: Wed, 06 Dec 2016 10:34:20 GMT < Content-Length: 0 < Content-Type: text/html; charset=UTF-8 < X-Trans-Id: tx23a1084b8c674fdeae8d4-0054f982ac < Cache-Control: no-cache < Pragma: no-cache < Content-Language: en
顧客が提供したキーを使用したサーバー側の暗号化の有効化
X-Server-Side-EncryptionX-Server-Side-Encryption-Container-Key
- AES 256暗号化キーを生成します。
openssl enc -aes256 -k password -P例:
openssl enc -aes256 -k mypassword -P出力:
salt=ADCA338FB4594CC6 key=08A8C5A2C81EB0508AAA1EAB7C81BC7AC9747E3E752E04FECAEE8D09E83A8C09 iv=4586BFB397A9CE3FFB7F90D14BF6B506
- Base64形式でキーをエンコードします。
echo 'value_from_key_field' | xxd -r -p | base64例:
echo "08A8C5A2C81EB0508AAA1EAB7C81BC7AC9747E3E752E04FECAEE8D09E83A8C09" | xxd -r -p | base64出力:
CKjFosgesFCKqh6rfIG8esl0fj51LgT+yu6NCeg6jAk= - コンテナを作成し、サーバー側暗号化メタデータ・ヘッダーを割り当てます。
curl -v -X PUT \ -H "X-Auth-Token: token" \ -H "X-Server-Side-Encryption: BASE_ENCRYPTION" \ -H "X-Server-Side-Encryption-Container-Key: master_encryption_key" accountURL/containerNametokenは、Oracle Cloud Infrastructure Object Storage Classicから先に取得した認証トークンです。 「REST API使用時のアクセスの認証」を参照してください。accountURLの構文については、「Oracle Cloud Infrastructure Object Storage ClassicリソースのREST URLについて」を参照してください。containerNameは、作成されるコンテナの名前です。コンテナ作成中の文字制限のリストについては、「文字の制限」を参照してください。
X-Server-Side-Encryptionは、サーバー側暗号化を有効にするためのヘッダーです。master_encryption_keyは、前のステップで生成されたBase64エンコードのAES-256暗号化キーです。
コンテナ
MyEncryptedContを作成し、サーバー側暗号化メタデータ・ヘッダーを割り当てます。curl -v -X PUT \ -H "X-Auth-Token: AUTH_tk57dee23521d6e4d809deeffa6bd23cd6" -H "X-Server-Side-Encryption: BASE_ENCRYPTION" -H "X-Server-Side-Encryption-Container-Key: CKjFosgesFCKqh6rfIG8esl0fj51LgT+yu6NCeg6jAk=" https://acme.storage.oraclecloud.com/v1/Storage-acme/MyEncryptedCont注意:
この例のアカウントのURLはhttps://acme.storage.oraclecloud.com/v1/Storage-acmeです。 このURLをアカウントのURLと置換してください。 アカウントURLを見つけるステップについては、「Oracle Cloud Infrastructure Object Storage ClassicリソースのREST URLについて」を参照してください。次に、このコマンドの出力例を示します:
PUT /v1/Storage-acme/MyEncryptedCont 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-Server-Side-Encryption: BASE_ENCRYPTION > X-Server-Side-Encryption-Container-Key: CKjFosgesFCKqh6rfIG8esl0fj51LgT+yu6NCeg6jAk= < HTTP/1.1 201 Created < Date: Wed, 07 Dec 2016 10:34:20 GMT < Content-Length: 0 < Content-Type: text/html; charset=UTF-8 < X-Trans-Id: tx23a1084b8c674fdeae8d4-0054f982ac < Cache-Control: no-cache < Pragma: no-cache < Content-Language: en
サーバー側の暗号化を確認しています
コンテナに対してサーバー側暗号化が有効になっているかどうかを確認するコンテナ・メタデータを確認します。
curl -v -X HEAD \
-H "X-Auth-Token:token" \
accountURL/containerNametokenは、Oracle Cloud Infrastructure Object Storage Classicから先に取得した認証トークンです。 「REST API使用時のアクセスの認証」を参照してください。accountURLの構文については、「Oracle Cloud Infrastructure Object Storage ClassicリソースのREST URLについて」を参照してください。containerNameは、作成されるコンテナの名前です。
例:
curl -v -X HEAD \
-H "X-Auth-Token: AUTH_tk64e7143df33fcbf2f20047c3c37984db" \
https://acme.storage.oraclecloud.com/v1/Storage-acme/MyEncryptedCont次に、このコマンドの出力例を示します:
> HEAD /v1/Storage-acme/MyEncryptedCont HTTP/1.1 > User-Agent: curl/7.29.0 > Host: acme.storage.oraclecloud.com > Accept: */* > X-Auth-Token: AUTH_tk64e7143df33fcbf2f20047c3c37984db < < HTTP/1.1 204 No Content < Date: Wed, 7 Dec 2016 11:40:11 GMT < X-Container-Object-Count: 0 < X-Container-Write: Storage-acme.Storage.Storage_ReadWriteGroup,Storage-acme.myCustomRole < X-Container-Meta-Category: Books < Accept-Ranges: bytes < X-Container-Meta-Quota-Count: 100 < X-Timestamp: 1425639066.56315 < X-Container-Read: .r:*,.rlistings < X-Server-Side-Encryption: BASE_ENCRYPTION < X-Container-Bytes-Used: 0 < Content-Type: text/plain; charset=utf-8 < X-Container-Meta-Quota-Bytes: 10737418240 < X-Trans-Id: txb0b9882eceba45b287266-0054f9921b < Cache-Control: no-cache < Pragma: no-cache < Content-Language: en
BASE_ENCRYPTIONの値を持つX-Server-Side-Encryptionメタデータ・ヘッダーが出力に表示され、サーバー側の暗号化がコンテナで有効になっていることを確認します。
コンテナ・メタデータの取得
サービス管理者ロールまたはコンテナのX-Container-Read ACLに指定されたロールを持つすべてのユーザーがこのタスクを実行できます。
HEADリクエストを送信して、コンテナのオブジェクトに関する情報を取得できます。次の情報が戻されます。
- コンテナACL (
X-Container-ReadおよびX-Container-Write) - コンテナ割当て制限: (
X-Container-Meta-Quota-CountおよびX-Container-Meta-Quota-Bytes) - コンテナ内のオブジェクト数(
X-Container-Object-Count) - コンテナですべてのオブジェクトによって使用されるストレージ容量(バイト:
X-Container-Bytes-Used) - カスタム・メタデータ (
X-Container-Meta-Name) Archiveコンテナに対してのみ返されるコンテナのストレージ・クラス(X-Storage-Class)
| インタフェース | 資料 |
|---|---|
|
Oracle Cloud Infrastructure Object Storage Classicコンソール (Oracle Cloud at Customerでは使用できません) |
Webコンソールを使用したコンテナ・メタデータの取得を参照してください。 |
|
RESTful API |
「コンテナのメタデータを表示」in Oracle Cloud Infrastructure Object Storage Classicの標準ストレージ用のREST APIを参照してください。 |
|
ファイル転送マネージャAPI |
「Oracle Cloud Infrastructure Object Storage Classic用のJava APIリファレンスFile Transfer Manager」の |
|
ファイル転送マネージャCLI |
「Oracle Cloud Infrastructure Object Storage Classicのコマンドライン・リファレンス」の「コンテナ・メタデータの取得」を参照してください。 |
Webコンソールを使用したコンテナ・メタデータの取得
(Oracle Cloud at Customerでは使用できません)- Oracle Cloud Infrastructure Object Storage Classicコンソールにサインインします。
- リストからコンテナを選択します。 コンテナの「Container Information」ペインを展開します。
コンテナの詳細が「Container Information」ペインに表示されます。
REST APIを使用したコンテナ・メタデータの取得
cURLコマンド構文
curl -v -X HEAD \
-H "X-Auth-Token: token" \
accountURL/containerName
tokenは、以前にOracle Cloud Infrastructure Object Storage Classicから取得した認証トークンです。 「REST API使用時のアクセス認証」を参照してください。accountURLの構文については、「Oracle Cloud Infrastructure Object Storage ClassicリソースのREST URLについて」を参照してください。containerNameは、メタデータを取得するコンテナの名前です。
注意:
Oracle Cloud Infrastructure Object Storage ClassicにREST APIリクエストを送信すると、コンテナ名、オブジェクト名、メタデータ値の非ASCII文字はすべてURLエンコードされている必要があります。 たとえば、my containerはmy%20containerとしてエンコードする必要があります。%20はスペース文字のHTMLエンコードです。 同様に、my Über Containerはmy%20%C3%9Cber%20Containerとしてエンコードする必要があります。%20はスペース文字を表し、%C3%9CはÜ文字です。
HTTPレスポンス・コード
- 成功:
204 No Content - 失敗: 「Oracle Cloud Infrastructure Object Storage Classicのエラー・コード・リファレンス」を参照してください
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 HEAD \ -H "X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b" \ https://acme.storage.oraclecloud.com/v1/Storage-acme/FirstContainer次は、
Standardコンテナに対するこのコマンドの出力の例です。> HEAD /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_tkb4fdf39c92e9f62cca9b7c196f8b6e6b > < HTTP/1.1 204 No Content < Date: Fri, 06 Mar 2015 11:40:11 GMT < X-Container-Object-Count: 0 < X-Container-Write: Storage-acme.Storage.Storage_ReadWriteGroup,Storage-acme.myCustomRole < X-Container-Meta-Category: Books < Accept-Ranges: bytes < X-Container-Meta-Quota-Count: 100 < X-Timestamp: 1425639066.56315 < X-Container-Read: .r:*,.rlistings < X-Container-Bytes-Used: 0 < Content-Type: text/plain; charset=utf-8 < X-Container-Meta-Quota-Bytes: 10737418240 < X-Trans-Id: txb0b9882eceba45b287266-0054f9921b < Cache-Control: no-cache < Pragma: no-cache < Content-Language: enArchiveコンテナの場合、メタデータのヘッダーX-Storage-Classに、値Archiveが表示されます。 次は、このコマンドの例です。> HEAD /v1/Storage-acme/firstArchiveContainer1 HTTP/1.1 > User-Agent: curl/7.29.0 > Host: acme.storage.oraclecloud.com:443 > Accept: */* > X-Auth-Token: AUTH_tk32486a5bbed54ee74213a30d6d128f9d > < HTTP/1.1 204 No Content < X-Container-Object-Count: 0 < X-Container-Write: cloudua001.Storage.Storage_ReadWriteGroup < Accept-Ranges: bytes < X-Timestamp: 1434733473.12286 < X-Container-Read: cloudua001.Storage.Storage_ReadOnlyGroup,cloudua001.Storage.Storage_ReadWriteGroup < X-Container-Bytes-Used: 0 < X-Trans-Id: txfcffc30b5a0c44cb91491-005584544ega < Date: Fri, 19 Jun 2015 17:41:34 GMT < X-Storage-Class: Archive < Content-Type: text/plain;charset=utf-8
- 「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次は、
Standardコンテナに対するこのコマンドの出力の例です。> HEAD /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_tkb4fdf39c92e9f62cca9b7c196f8b6e6b > < HTTP/1.1 204 No Content < Date: Fri, 06 Mar 2015 11:40:11 GMT < X-Container-Object-Count: 0 < X-Container-Write: Storage-7b16fede61e1417ab83eb52e06f0e365.Storage.Storage_ReadWriteGroup,Storage-7b16fede61e1417ab83eb52e06f0e365.myCustomRole < X-Container-Meta-Category: Books < Accept-Ranges: bytes < X-Container-Meta-Quota-Count: 100 < X-Timestamp: 1425639066.56315 < X-Container-Read: .r:*,.rlistings < X-Container-Bytes-Used: 0 < Content-Type: text/plain; charset=utf-8 < X-Container-Meta-Quota-Bytes: 10737418240 < X-Trans-Id: txb0b9882eceba45b287266-0054f9921b < Cache-Control: no-cache < Pragma: no-cache < Content-Language: enArchiveコンテナの場合、メタデータのヘッダーX-Storage-Classに、値Archiveが表示されます。 次は、このコマンドの例です。> HEAD /v1/Storage-7b16fede61e1417ab83eb52e06f0e365/firstArchiveContainer1 HTTP/1.1 > User-Agent: curl/7.29.0 > Host: storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com:443 > Accept: */* > X-Auth-Token: AUTH_tk32486a5bbed54ee74213a30d6d128f9d > < HTTP/1.1 204 No Content < X-Container-Object-Count: 0 < X-Container-Write: cloudua001.Storage.Storage_ReadWriteGroup < Accept-Ranges: bytes < X-Timestamp: 1434733473.12286 < X-Container-Read: cloudua001.Storage.Storage_ReadOnlyGroup,cloudua001.Storage.Storage_ReadWriteGroup < X-Container-Bytes-Used: 0 < X-Trans-Id: txfcffc30b5a0c44cb91491-005584544ega < Date: Fri, 19 Jun 2015 17:41:34 GMT < X-Storage-Class: Archive < Content-Type: text/plain;charset=utf-8
コンテナ・メタデータの削除
| インタフェース | 資料 |
|---|---|
|
Oracle Cloud Infrastructure Object Storage Classicコンソール (Oracle Cloud at Customerでは使用できません) |
「Webコンソールを使用したコンテナ・メタデータの削除」を参照してください。 |
|
RESTful API |
参照:
|
|
Javaライブラリ |
「Oracle Cloud Infrastructure Object Storage ClassicのJava APIリファレンス」の |
Webコンソールを使用したコンテナ・メタデータの削除
(Oracle Cloud at Customerでは使用できません)- Oracle Cloud Infrastructure Object Storage Classicコンソールにサインインします。
- メタデータを削除するコンテナを選択します。
- 「Container Information」を展開します。
コンテナの詳細が表示されます。
- 「Edit」をクリックします。
「Custom Metadata」フィールドを探します。
- 削除するメタデータの名前と値を特定します。
- メタデータ値の右側にある
をクリックします。
- 「Save」をクリックします。
メタデータの名前と値が削除されます。
REST APIを使用したコンテナ・メタデータの削除
cURLコマンド構文
curl -v -X POST \
-H "X-Auth-Token: token" \
-H "X-Remove-Container-Meta-Name: any_arbitrary_string" \
accountURL/containerName
tokenは、以前にOracle Cloud Infrastructure Object Storage Classicから取得した認証トークンです。 「REST API使用時のアクセス認証」を参照してください。Nameとvalueは、削除するメタデータのキーと値です。accountURLの構文については、「Oracle Cloud Infrastructure Object Storage ClassicリソースのREST URLについて」を参照してください。containerNameは、メタデータを削除するコンテナの名前です。
注意:
Oracle Cloud Infrastructure Object Storage ClassicにREST APIリクエストを送信すると、コンテナ名、オブジェクト名、メタデータ値の非ASCII文字はすべてURLエンコードされている必要があります。 たとえば、my containerはmy%20containerとしてエンコードする必要があります。%20はスペース文字のHTMLエンコードです。 同様に、my Über Containerはmy%20%C3%9Cber%20Containerとしてエンコードする必要があります。%20はスペース文字を表し、%C3%9CはÜ文字です。
HTTPレスポンス・コード
- 成功:
204 No Content - 失敗: 「Oracle Cloud Infrastructure Object Storage Classicのエラー・コード・リファレンス」を参照してください
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 POST \ -H "X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b" \ -H "X-Remove-Container-Meta-Category: Books" \ https://acme.storage.oraclecloud.com/v1/Storage-acme/FirstContainer次に、このコマンドの出力例を示します:
> POST /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_tkb4fdf39c92e9f62cca9b7c196f8b6e6b > X-Remove-Container-Meta-Category: Books > < HTTP/1.1 204 No Content < X-Trans-Id: tx30d406ea72b340378476a-00585b78c7ga < Date: Thu, 22 Dec 2016 06:55:04 GMT < Connection: keep-alive < X-Last-Modified-Timestamp: 1482389703.89669 < Content-Type: text/html;charset=UTF-8 < - 「RESTエンドポイント(永続的)」フィールドから取得したサービス永続RESTエンドポイントURLの使用:
注意:
このcURLコマンドの例は、2017年11月以降に作成されたアカウントに適用されます。curl -v -X POST \ -H "X-Auth-Token: AUTH_tkb4fdf39c92e9f62cca9b7c196f8b6e6b" \ -H "X-Remove-Container-Meta-Category: Books" \ https://storage-7b16fede61e1417ab83eb52e06f0e365.storage.oraclecloud.com/v1/Storage-7b16fede61e1417ab83eb52e06f0e365/FirstContainer次に、このコマンドの出力例を示します:
> POST /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_tkb4fdf39c92e9f62cca9b7c196f8b6e6b > X-Remove-Container-Meta-Category: Books > < HTTP/1.1 204 No Content < X-Trans-Id: tx30d406ea72b340378476a-00585b78c7ga < Date: Thu, 22 Dec 2016 06:55:04 GMT < Connection: keep-alive < X-Last-Modified-Timestamp: 1482389703.89669 < Content-Type: text/html;charset=UTF-8 <