オブジェクト・ストレージ、アーカイブ・ストレージおよびデータ転送の詳細

このトピックでは、アーカイブ・ストレージ、オブジェクト・ストレージおよびデータ転送へのアクセスを制御するポリシーの書込みの詳細を説明します。

ヒント

オブジェクト・ライフサイクル・ポリシー機能では、オブジェクトをアーカイブおよび削除する権限をオブジェクト・ストレージ・サービスに付与する必要があります。詳細は、オブジェクト・ライフサイクル・ポリシーの使用を参照してください。

リソース・タイプ

個々のリソース・タイプ

objectstorage-namespaces

buckets

objects

集約リソース・タイプ

object-family

<verb> object-familyを使用するポリシーは、個々のリソース・タイプごとに個別の<verb> <individual resource-type>ステートメントを使用して記述することと同じです。

object-familyに含まれる個々のリソース・タイプについて、各動詞でカバーされているAPI操作の詳細は、動詞とリソース・タイプの組合せの詳細の表を参照してください。

データ転送の追加の個別リソース・タイプ

data-transfer-jobs

サポートされている変数

オブジェクト・ストレージは、すべての一般的な変数(すべてのリクエストの一般的な変数を参照)と次のリストにある変数をサポートしています。

このリソース・タイプの操作... この変数を使用できます 変数タイプ コメント
bucketsおよびobjects target.bucket.name 文字列とパターン この変数を使用して、特定のバケットへのアクセスを制御します。重要:条件の一致では、大文字と小文字が区別されません。「BucketA」と「bucketA」という名前のバケットがある場合、条件where target.bucket.name="BucketA"は両方に適用されます。ポリシーのリソース名に潜在的な問題が発生しないようにするには、リソースに個別の名前を付けます。
bucketsおよびobjects target.bucket.tag.<TagNamespace>.<TagKeyDefinition> 文字列 この変数を使用して、特定のタグを持つバケットへのアクセスを制御します。ユーザーによるオブジェクトのオブジェクト・ストレージ・バケットへの書込みを参照してください。重要:この変数は、ListBucketなどの複数のバケットを含むCreateBucket操作には使用できません。
objects target.object.name 文字列とパターン この変数を使用して、特定のオブジェクトまたはオブジェクト・パターンへのアクセスを制御します。
ノート

request.ipv4.ipaddressおよびrequest.vcn.id変数は非推奨です。これらの変数を使用するかわりに、ネットワーク・ソースを作成して、IPアドレス範囲または特定のVCN IDを指定します。その後、ポリシーでそのネットワーク・ソースを使用して、許可されたネットワークからのリクエストのみにアクセスを制限できます。詳細は、ネットワーク・ソースの概要を参照してください。

動詞とリソース・タイプの組合せの詳細

次の表に、各動詞でカバーされている権限およびAPI操作を示します。アクセス・レベルは、inspect > read > use > manageの順に累積されます。たとえば、リソースを使用できるグループは、そのリソースを検査して読み取ることもできます。表セル内のプラス記号(+)は、その上のセルと比較して増分アクセスを示しますが、「余分なし」は増分アクセスを示しません。

object-familyリソース・タイプの場合

objectstorage-namespaces
動詞 権限 完全に対象となるAPI 部分的に対象となるAPI
read

なし

GetNamespace

なし

manage

OBJECTSTORAGE_NAMESPACE_READ

OBJECTSTORAGE_NAMESPACE_UPDATE

GetNamespace (オプションのcompartmentIdパラメータ付き)

GetNamespaceMetadata

UpdateNamespaceMetadata

なし
buckets
動詞 権限 完全に対象となるAPI 部分的に対象となるAPI
inspect

BUCKET_INSPECT

HeadBucket

ListBuckets

なし

read

INSPECT +

BUCKET_READ

INSPECT +

GetBucket

ListMultipartUploads

GetObjectLifecyclePolicy

GetRetentionRule

ListRetentionRules

GetReplicationPolicy

ListReplicationPolicies

ListReplicationSources

なし

use

READ +

BUCKET_UPDATE

READ +

UpdateBucket

DeleteObjectLifecyclePolicy

ReencryptBucket

PutObjectLifecyclePolicy
manage

USE +

BUCKET_CREATE

BUCKET_DELETE

PAR_MANAGE

RETENTION_RULE_MANAGE

RETENTION_RULE_LOCK (オプションのルール・ロックを使用している場合)

USE +

CreateBucket

DeleteBucket

CreatePreauthenticatedRequest

GetPreauthenticatedRequest

ListPreauthenticatedRequest

DeletePreauthenticatedRequest

CreateRetentionRule

UpdateRetentionRule

DeleteRetentionRule

CreateReplicationPolicyDeleteReplicationPolicyMakeBucketWritable (これらの操作にはmanage objectsも必要)

objects
動詞 権限 完全に対象となるAPI 部分的に対象となるAPI
inspect

OBJECT_INSPECT

HeadObject

ListObjects

ListMultipartUploadParts

なし

read

INSPECT +

OBJECT_READ

INSPECT +

GetObject

なし

use

READ +

OBJECT_OVERWRITE

READ +

ReencryptObject

READ +

PutObject (USEを使用すると、PutObjectによって既存のオブジェクトを上書きできますが、新しいオブジェクトを作成するにはOBJECT_CREATEも必要です)

CreateMultipartUploadUploadPartCommitMultipartUpload (これらの操作にはmanage objectsも必要)

manage

USE +

OBJECT_CREATE

OBJECT_DELETE

OBJECT_VERSION_DELETE

OBJECT_RESTORE

OBJECT_UPDATE_TIER

USE +

CreateObject

RenameObject

RestoreObject

DeleteObject

DeleteObjectVersion

UpdateObjectStorageTier

CreateMultipartUpload

UploadPart

CommitMultipartUpload

AbortMultipartUpload

PutObjectLifecyclePolicy (manage objectsも必要)

CreateReplicationPolicyDeleteReplicationPolicyMakeBucketWritable (これらの操作にはmanage bucketsも必要)

 
data-transfer-jobs

データ転送ジョブのポリシーでは、オブジェクトの管理またはオブジェクトの管理とバケットの管理も必要です。詳細は、必要なIAMユーザー、グループおよびポリシーの作成を参照してください。

動詞 権限 完全に対象となるAPI 部分的に対象となるAPI
inspect

TRANSFER_JOB_INSPECT

顧客対応APIがありません

顧客対応APIがありません

read

INSPECT +

TRANSFER_JOB_READ

INSPECT +

顧客対応APIがありません

顧客対応APIがありません

use

READ +

TRANSFER_JOB_UPDATE

READ +

顧客対応APIがありません

READ +

顧客対応APIがありません

manage

USE +

TRANSFER_JOB_CREATE

TRANSFER_JOB_DELETE

USE +

顧客対応APIがありません

USE +

顧客対応APIがありません

各API操作に必要な権限

次の表は、API操作を論理的な順序で、リソース・タイプ別にグループ化して示しています。

権限の詳細は、権限を参照してください。

API操作 操作の使用に必要な権限
GetNamespace

APIには権限が必要なく、コール元のネームスペースを返します。APIを使用して資格証明を検証します。

オプションのcompartmentIdパラメータを含める場合、OBJECTSTORAGE_NAMESPACE_READ権限が必要です。compartmentIdパラメータを使用して、サード・パーティ・テナンシのネームスペースを決定します。

GetNamespaceMetadata OBJECTSTORAGE_NAMESPACE_READ
UpdateNamespaceMetadata OBJECTSTORAGE_NAMESPACE_UPDATE
CreateBucket BUCKET_CREATE
UpdateBucket BUCKET_UPDATE
GetBucket BUCKET_READ
HeadBucket BUCKET_INSPECT
ListBuckets BUCKET_INSPECT
DeleteBucket BUCKET_DELETE
ReencryptBucket BUCKET_UPDATE
PutObject

必要な権限は、オブジェクトがバケットにすでに存在するかどうかに応じて異なります。

  • OBJECT_CREATEは、その名前のオブジェクトがバケットにまだ存在しない場合に必須です。
  • OBJECT_OVERWRITEは、その名前のオブジェクトがバケットにすでに存在する場合に必要です。
RenameObject OBJECT_CREATEとOBJECT_OVERWRITE
GetObject OBJECT_READ
HeadObject OBJECT_READまたはOBJECT_INSPECT
DeleteObject OBJECT_DELETE
DeleteObjectVersion OBJECT_VERSION_DELETE
ListObjects OBJECT_INSPECT
ReencryptObject OBJECT_READおよびOBJECT_OVERWRITE
RestoreObjects OBJECT_RESTORE
UpdateObjectStorageTier OBJECT_UPDATE_TIER
CreateMultipartUpload OBJECT_CREATEとOBJECT_OVERWRITE
UploadPart OBJECT_CREATEとOBJECT_OVERWRITE
CommitMultipartUpload OBJECT_CREATEとOBJECT_OVERWRITE
ListMultipartUploadParts OBJECT_INSPECT
ListMultipartUploads BUCKET_READ
AbortMultipartUpload OBJECT_DELETE
CreatePreauthenticatedRequest PAR_MANAGE
GetPreauthenticatedRequest PAR_MANAGEまたはBUCKET_READ
ListPreauthenticatedRequests PAR_MANAGEまたはBUCKET_READ
DeletePreauthenticatedRequest PAR_MANAGE
PutObjectLifecyclePolicy BUCKET_UPDATE、OBJECT_CREATEおよびOBJECT_DELETE
GetObjectLifecyclePolicy BUCKET_READ
DeleteObjectLifecyclePolicy BUCKET_UPDATE
CreateRetentionRule BUCKET_UPDATEおよびRETENTION_RULE_MANAGE (およびRETENTION_RULE_LOCK)
GetRetentionRule BUCKET_READ
ListRetentionRule BUCKET_READ
UpdateRetentionRule BUCKET_UPDATEおよびRETENTION_RULE_MANAGE (およびRETENTION_RULE_LOCK)
DeleteRetentionRule BUCKET_UPDATEおよびRETENTION_RULE_MANAGE
CreateCopyRequest OBJECT_READ、OBJECT_CREATE、OBJECT_OVERWRITEおよびOBJECT_INSPECT
GetWorkRequest OBJECT_READ
ListWorkRequests OBJECT_INSPECT
CancelWorkRequest OBJECT_DELETE
CreateReplicationPolicy OBJECT_READ、OBJECT_CREATE、OBJECT_OVERWRITE、OBJECT_INSPECT、OBJECT_DELETE、OBJECT_RESTORE、BUCKET_READおよびBUCKET_UPDATE
GetReplicationPolicy BUCKET_READ
DeleteReplicationPolicy OBJECT_READ、OBJECT_CREATE、OBJECT_OVERWRITE、OBJECT_INSPECT、OBJECT_DELETE、OBJECT_RESTORE、BUCKET_READおよびBUCKET_UPDATE
ListReplicationPolicies BUCKET_READ
ListReplicationSources BUCKET_READ
MakeBucketWritable OBJECT_READ、OBJECT_CREATE、OBJECT_OVERWRITE、OBJECT_INSPECT、OBJECT_DELETE、BUCKET_READおよびBUCKET_UPDATE