5
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

[OCI]Object Storage Objectを別テナンシへコピーしてみた

Last updated at Posted at 2020-03-19

この記事でやっていること

  • Oracle Cloud Infrastructure のObject Storageのobjectを別のテナンシのObject Storageへコピー
  • 同一リージョン内での操作例

作業手順

  1. オブジェクトのコピーに必要なIAMポリシーの設定・確認
  2. 別のテナンシのObject Storageにアクセス・操作するためのIAMポリシーの設定・確認
  3. objectのコピー

1. オブジェクトのコピーに必要なIAMポリシーの設定・確認

サービス権限

コピー操作を実行する各リージョンにて「オブジェクト・ストレージ」サービスを認可する必要があります。
(コピー元、コピー先双方のテナンシで設定)
指定したリージョンのサービスを認可するポリシーを作成して、
テナンシ内のすべてのコンパートメントのオブジェクト・ストレージのネームスペース、バケットおよび関連オブジェクトを管理できる権限:

Allow service objectstorage-<region_name> to manage object-family in tenancy

操作を限定して許可する権限:

テナンシー全体
Allow service objectstorage-<region_name> to {OBJECT_READ, OBJECT_INSPECT, OBJECT_CREATE, OBJECT_OVERWRITE, OBJECT_DELETE} in tenancy
コンパートメント指定
Allow service objectstorage-<region_name> to {OBJECT_READ, OBJECT_INSPECT, OBJECT_CREATE, OBJECT_OVERWRITE, OBJECT_DELETE} in compartment <compartment_name>

ユーザ権限

コピー元、コピー先双方のテナンシでオブジェクトのコピーを実行するのに必要なアクセス権が必要です。
双方のバケットでオブジェクトを管理する権限も必要です。

管理者の場合:
指定したIAMグループがオブジェクト・ストレージのネームスペース、バケットおよび関連オブジェクトをテナンシ内のすべてのコンパートメントで管理するポリシーを作成できます:

Allow group <IAM_group_name> to manage object-family in tenancy

指定したグループにテナンシの特定コンパートメントのバケットおよびオブジェクトのみを管理させるポリシー

Allow group <IAM_group_name> to manage buckets in compartment <compartment_name>

2. 別のテナンシのObject Storageにアクセス・操作するためのIAMポリシーの設定・確認

テナンシ間でコピー操作を許可する権限の設定

コピー元テナンシ

コピー元テナンシのIAMグループ名とコピー先のテナンシのOCIDを取得し、以下のポリシーを作成

define tenancy CopyDestinationTenancy as <OCID_for_destination_tenancy>
endorse group <group_name_in_source_tenancy> to {OBJECT_READ, OBJECT_CREATE, OBJECT_OVERWRITE, OBJECT_INSPECT, OBJECT_DELETE} in tenancy CopyDestinationTenancy }}}

image02.JPG

コピー先テナンシ

コピー元のテナンシのOCIDとコピー元のIAMグループのOCIDを取得し、以下のポリシーを作成

define tenancy CopySourceTenancy as <OCID_for_source_tenancy>
define group CopySourceGroup as <OCID_for_group_in_source_tenancy>
admit group CopySourceGroup of tenancy CopySourceTenancy to {OBJECT_READ, OBJECT_CREATE, OBJECT_OVERWRITE, OBJECT_INSPECT, OBJECT_DELETE} in tenancy }}}

image03.JPG

3. objectのコピー

コピー元バケット画面
ネームスペース、バケット名、オブジェクト名を確認
image09.jpg

コピー先バケット画面
ネームスペース、バケット名を確認
image08.jpg

Webコンソールの例

コピー元オブジェクトを選択し、メニューからコピーを選択
image07.jpg
コピー先のネームスペース名、リージョン、バケット名を指定し、「オブジェクトのコピー」を押下
image04.JPG
コピーの完了
image06.jpg

CLIの例

oci os object copy --namespace-name nr9kylwk --bucket-name CrossTenancyRead --source-object-name crosstenancy.txt --destination-namespace nrdoltfd --destination-region ap-tokyo-1 --destination-bucket CrossTenancyCopy --destination-object-name crosstenancy.txt

さいごに

権限付与ができれば、通常操作でテナンシ間でのオブジェクトコピーができた。

参考情報

5
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?