Dettagli per lo storage degli oggetti e lo storage di archivio

In questo argomento vengono descritti i dettagli relativi alla scrittura dei criteri per controllare l'accesso allo storage di archivio e allo storage degli oggetti.

Suggerimento

La funzione dei criteri del ciclo di vita degli oggetti richiede di concedere le autorizzazioni al servizio di storage degli oggetti per archiviare ed eliminare gli oggetti per conto dell'utente. Per ulteriori informazioni, vedere Uso dei criteri del ciclo di vita degli oggetti.

Resource-Types

Singola risorsa - Tipi

objectstorage-namespaces

buckets

objects

Tipo di risorsa aggregata

object-family

Un criterio che utilizza <verb> object-family equivale a scriverne uno con un'istruzione <verb> <individual resource-type> separata per ciascuno dei singoli tipi di risorsa.

Per i dettagli delle operazioni API coperte da ciascun verbo, per ogni singolo tipo di risorsa incluso in object-family, vedere la tabella in Dettagli per combinazioni Verb + Tipo di risorsa.

Variabili supportate

Lo storage degli oggetti supporta tutte le variabili generali (vedere Variabili generali per tutte le richieste), oltre a quelle elencate di seguito.

Operazioni per questo tipo di risorsa... Può utilizzare questa variabile Tipo di variabile Commenti
buckets e objects target.bucket.name Stringa Utilizzare questa variabile per controllare l'accesso a un bucket specifico. Per un criterio di esempio, vedere Consenti agli utenti di scrivere oggetti nei bucket di storage degli oggetti. Importante: la corrispondenza delle condizioni non fa distinzione tra maiuscole e minuscole. Se si dispone di un bucket denominato "BucketA" e di un bucket denominato "bucketA", la condizione where target.bucket.name="BucketA" si applica a entrambi. Per evitare potenziali problemi con i nomi delle risorse nei criteri, assegnare nomi distinti alle risorse.
buckets e objects target.bucket.tag.<TagNamespace>.<TagKeyDefinition> Stringa Utilizzare questa variabile per controllare l'accesso ai bucket con la tag specifica. Vedere Consenti agli utenti di scrivere oggetti nei bucket di storage degli oggetti.

Importante: non è possibile utilizzare questa variabile per le operazioni e le operazioni CreateBucket che coinvolgono più bucket, ad esempio ListBucket.

Nota

Le variabili request.ipv4.ipaddress e request.vcn.id non sono più valide. Anziché utilizzare queste variabili, creare un'origine di rete per specificare un intervallo di indirizzi IP o un ID VCN specifico. È quindi possibile utilizzare l'origine di rete nel criterio per limitare l'accesso solo alle richieste provenienti dalle reti consentite. Per ulteriori informazioni, vedere Panoramica delle origini di rete.

Dettagli per le combinazioni verbo-tipo di risorsa

Le tabelle seguenti mostrano le autorizzazioni e le operazioni API coperte da ciascun verbo. Il livello di accesso è cumulativo quando si sceglie inspect > read > use > manage. Ad esempio, un gruppo che può utilizzare una risorsa può anche ispezionare e leggere tale risorsa. Un segno più (+) in una cella di tabella indica l'accesso incrementale rispetto alla cella direttamente sopra di essa, mentre "nessun extra" indica nessun accesso incrementale.

Per tipi di risorse famiglia-oggetto

objectstorage-namespaces
Verbi Autorizzazioni API completamente coperte API parzialmente coperte
letto

Nessuna

GetNamespace

nessuno

gestisci

OBJECTSTORAGE_NAMESPACE_READ

OBJECTSTORAGE_NAMESPACE_UPDATE

GetNamespace con il parametro compartmentId facoltativo

GetNamespaceMetadata

UpdateNamespaceMetadata

nessuno
buckets
Verbi Autorizzazioni API completamente coperte API parzialmente coperte
ispezionare

BUCKET_INSPECT

HeadBucket

ListBuckets

nessuno

letto

ISPEZIONA +

BUCKET_READ

ISPEZIONA +

GetBucket

ListMultipartUploads

GetObjectLifecyclePolicy

GetRetentionRule

ListRetentionRules

GetReplicationPolicy

ListReplicationPolicies

ListReplicationSources

nessuno

utilizzare

LETTURA +

BUCKET_UPDATE

LETTURA +

UpdateBucket

DeleteObjectLifecyclePolicy

ReencryptBucket

PutObjectLifecyclePolicy
gestisci

USE +

BUCKET_CREATE

BUCKET_DELETE

PAR_MANAGE

RETENTION_RULE_MANAGE

RETENTION_RULE_LOCK (se si utilizza il blocco facoltativo delle regole)

USE +

CreateBucket

DeleteBucket

CreatePreauthenticatedRequest

GetPreauthenticatedRequest

ListPreauthenticatedRequest

DeletePreauthenticatedRequest

CreateRetentionRule

UpdateRetentionRule

DeleteRetentionRule

CreateReplicationPolicy, DeleteReplicationPolicy, MakeBucketWritable (anche queste operazioni richiedono manage objects)

objects
Verbi Autorizzazioni API completamente coperte API parzialmente coperte
ispezionare

OBJECT_INSPECT

HeadObject

ListObjects

ListMultipartUploadParts

nessuno

letto

ISPEZIONA +

OBJECT_READ

ISPEZIONA +

GetObject

nessuno

utilizzare

LETTURA +

OBJECT_OVERWRITE

LETTURA +

ReencryptObject

LETTURA +

PutObject (USE consente a PutObject di sovrascrivere gli oggetti esistenti, ma la creazione di un nuovo oggetto richiede anche OBJECT_CREATE)

CreateMultipartUpload, UploadPart, CommitMultipartUpload (anche queste operazioni richiedono manage objects)

gestisci

UTILIZZO +

OBJECT_CREATE

OBJECT_DELETE

OBJECT_VERSION_DELETE

OBJECT_RESTORE

OBJECT_UPDATE_TIER

UTILIZZO +

CreateObject

RenameObject

RestoreObject

DeleteObject

DeleteObjectVersion

UpdateObjectStorageTier

CreateMultipartUpload

UploadPart

CommitMultipartUpload

AbortMultipartUpload

PutObjectLifecyclePolicy (ha bisogno anche di manage objects)

CreateReplicationPolicy, DeleteReplicationPolicy, MakeBucketWritable (anche queste operazioni richiedono manage buckets)

 

Autorizzazioni necessarie per ogni operazione API

Nella tabella seguente sono elencate le operazioni API in ordine logico, raggruppate per tipo di risorsa.

Per informazioni sulle autorizzazioni, vedere Autorizzazioni.

Operazione API Autorizzazioni necessarie per utilizzare l'operazione
GetNamespace

L'API non richiede autorizzazioni e restituisce lo spazio di nomi del chiamante. Utilizzare l'API per convalidare le credenziali.

L'autorizzazione OBJECTSTORAGE_NAMESPACE_READ è obbligatoria se si include il parametro compartmentId facoltativo. Utilizzare il parametro compartmentId per determinare lo spazio di nomi per una tenancy di terze parti.

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

L'autorizzazione richiesta dipende dall'esistenza o meno dell'oggetto nel bucket:

  • OBJECT_CREATE è obbligatorio quando un oggetto con lo stesso nome non esiste già nel bucket.
  • OBJECT_OVERWRITE è obbligatorio quando un oggetto con il nome specificato esiste già nel bucket.
RenameObject OBJECT_CREATE e OBJECT_OVERWRITE
GetObject OBJECT_READ
HeadObject OBJECT_READ o 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 e OBJECT_OVERWRITE
UploadPart OBJECT_CREATE e OBJECT_OVERWRITE
CommitMultipartUpload OBJECT_CREATE e OBJECT_OVERWRITE
ListMultipartUploadParts OBJECT_INSPECT
ListMultipartUploads BUCKET_READ
AbortMultipartUpload OBJECT_DELETE
CreatePreauthenticatedRequest PAR_MANAGE
GetPreauthenticatedRequest PAR_MANAGE o BUCKET_READ
ListPreauthenticatedRequests PAR_MANAGE o BUCKET_READ
DeletePreauthenticatedRequest PAR_MANAGE
PutObjectLifecyclePolicy BUCKET_UPDATE, OBJECT_CREATE e 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 e 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 e BUCKET_UPDATE
GetReplicationPolicy BUCKET_READ
DeleteReplicationPolicy OBJECT_READ, OBJECT_CREATE, OBJECT_OVERWRITE, OBJECT_INSPECT, OBJECT_DELETE, OBJECT_RESTORE, BUCKET_READ e BUCKET_UPDATE
ListReplicationPolicies BUCKET_READ
ListReplicationSources BUCKET_READ
MakeBucketWritable OBJECT_READ, OBJECT_CREATE, OBJECT_OVERWRITE, OBJECT_INSPECT, OBJECT_DELETE, BUCKET_READ e BUCKET_UPDATE