Dettagli per vault, gestione delle chiavi e segreti

In questo argomento vengono descritti i dettagli per la scrittura dei criteri per controllare l'accesso al servizio Vault.

Singola risorsa - Tipi

vaults

keys

key-delegate

secrets

secret-versions

secret-bundles

Tipo di risorsa aggregata

secret-family

Un criterio che utilizza <verb> secret-family equivale a scriverne uno con un'istruzione <verb> <individual resource-type> separata per ciascuno dei singoli tipi di risorse segrete. I tipi di risorse segrete includono solo secrets, secret-versions e secret-bundles.

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

Variabili supportate

Vault supporta tutte le variabili generali, oltre a quelle elencate qui. Per ulteriori informazioni sulle variabili generali supportate dai servizi Oracle Cloud Infrastructure, vedere Variabili generali per tutte le richieste.

Variabile Tipo di variabile Commenti
request.includePlainTextKey Stringa Utilizzare questa variabile per controllare se restituire la chiave di testo normale, oltre alla chiave cifrata, in risposta a una richiesta di generazione di una chiave di cifratura dati.
request.kms-key.id Stringa Utilizzare questa variabile per controllare se è possibile creare volumi a blocchi o bucket senza una chiave di cifratura master del vault.
target.boot-volume.kms-key.id Stringa Utilizzare questa variabile per controllare se le istanze di computazione possono essere avviate con volumi di avvio creati senza una chiave di cifratura master del vault.
target.key.id Entità (OCID) Utilizzare questa variabile per controllare l'accesso a chiavi specifiche in base all'OCID.
target.vault.id Entità (OCID) Utilizzare questa variabile per controllare l'accesso a vault specifici in base all'OCID.
target.secret.name Stringa Utilizzare questa variabile per controllare l'accesso a segreti specifici, versioni segrete e bundle segreti in base al nome.
target.secret.id Entità (OCID) Utilizzare questa variabile per controllare l'accesso a segreti specifici, versioni dei segreti e bundle di segreti in base all'OCID.

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.

Ad esempio, il verbo use per il tipo di risorsa keys include le stesse autorizzazioni e le stesse operazioni API del verbo read, oltre alle autorizzazioni KEY_ENCRYPT e KEY_DECRYPT e a una serie di operazioni API (Encrypt, Decrypt e GenerateDataEncryptionKey). Il verbo manage consente ancora più autorizzazioni e operazioni API rispetto al verbo use.

vaults
Verbi Autorizzazioni API completamente coperte API parzialmente coperte
ispezionare

VAULT_INSPECT

ListVaults

nessuno

letto

ISPEZIONA +

VAULT_READ

ISPEZIONA +

GetVault

GetVaultUsage

nessuno

utilizzare

LETTURA +

VAULT_CREATE_KEY

VAULT_IMPORT_KEY

VAULT_CREATE_SECRET

nessun altro

 

CreateKey (ha bisogno anche di manage keys)

ImportKey (ha bisogno anche di manage keys)

CreateSecret (ha bisogno anche di manage secrets)

gestisci

UTILIZZO +

VAULT_CREATE

VAULT_UPDATE

VAULT_DELETE

VAULT_MOVE

VAULT_BACKUP

VAULT_RESTORE

VAULT_REPLICATE

UTILIZZO +

CreateVault

UpdateVault

ScheduleVaultDeletion

CancelVaultDeletion

ChangeVaultCompartment

BackupVault

RestoreVaultFromFile

RestoreVaultFromObjectStore

CreateVaultReplica

DeleteVaultReplica

nessuno

keys
Verbi Autorizzazioni API completamente coperte API parzialmente coperte
ispezionare

KEY_INSPECT

ListKeys

ListKeyVersions

nessuno

letto

ISPEZIONA +

KEY_READ

ISPEZIONA +

GetKey

GetKeyVersion

nessuno

utilizzare

LETTURA +

KEY_ENCRYPT

KEY_DECRYPT

KEY_EXPORT

KEY_SIGN

KEY_VERIFY

LETTURA +

Encrypt

Decrypt

ExportKey

Sign

Verify

nessuno

gestisci

USE +

KEY_CREATE

KEY_UPDATE

KEY_ROTATE

KEY_DELETE

KEY_MOVE

KEY_IMPORT

KEY_BACKUP

KEY_RESTORE

USE +

UpdateKey

CreateKeyVersion

CancelKeyDeletion

ChangeKeyCompartment

ImportKeyVersion

BackupKey

RestoreKeyFromFile

RestoreKeyFromObjectStore

CreateKey (ha bisogno anche di use vaults)

ImportKey (ha bisogno anche di use vaults)

key-delegate
Nota

Le autorizzazioni key-delegate vengono utilizzate per consentire ai servizi OCI integrati di utilizzare una chiave specifica in un compartimento specifico. Ad esempio, puoi utilizzare questo tipo di autorizzazione per abilitare il servizio di storage degli oggetti a creare o aggiornare un bucket cifrato e per consentire al servizio di cifrare o decifrare i dati nel bucket. Gli utenti a cui sono state concesse autorizzazioni di delega non dispongono dell'autorizzazione per utilizzare la chiave specificata, ma piuttosto dell'autorizzazione per consentire ai servizi specificati di utilizzare la chiave. Per ulteriori informazioni, vedere i seguenti criteri comuni:

Verbi Autorizzazioni API completamente coperte API parzialmente coperte
utilizzare

KEY_ASSOCIATE

KEY_DISASSOCIATE

Encrypt

GenerateDataEncryptionKey

Decrypt

nessuno

hsm-cluster
Verbi Autorizzazioni API completamente coperta API parzialmente coperta
Ispezionare

HSM_CLUSTER_INSPECT

ListHsmClusters

ListHsmPartitions

Nessuna.

letto

ISPEZIONA +

HSM_CLUSTER_READ

GetHsmCluster

GetHsmPartition

Nessuna.

utilizzare

LETTURA +

HSM_CLUSTER_UPDATE

GetPreCoUserCredentials

DownloadCertificateSigningRequest

UpdateHsmCluster

UploadPartitionCertificates

Nessuna.

gestisci

UTILIZZO +

HSM_CLUSTER_DELETE

HSM_CLUSTER_CREATE

HSM_CLUSTER_MOVE

CreateHsmCluster

ChangeHsmClusterCompartment

ScheduleHsmClusterDeletion

CancelHsmClusterDeletion

Nessuna.

secrets
Verbi Autorizzazioni API completamente coperte API parzialmente coperte
ispezionare

SECRET_INSPECT

ListSecrets

nessuno

letto

ISPEZIONA +

SECRET_READ

ISPEZIONA +

GetSecret

nessuno

utilizzare

LETTURA +

SECRET_UPDATE

LETTURA +

UpdateSecret

LETTURA +

ChangeSecretCompartment (ha bisogno anche di manage secrets)

ScheduleSecretVersionDeletion (ha bisogno anche di manage secret-versions)

CancelSecretVersionDeletion (ha bisogno anche di manage secret-versions)

gestisci

UTILIZZO +

SECRET_CREATE

SECRET_DELETE

SECRET_MOVE

SECRET_ROTATE

UTILIZZO +

ScheduleSecretDeletion

CancelSecretDeletion

RotateSecret

USE +

CreateSecret (ha bisogno anche di use vaults)

ChangeSecretCompartment (ha bisogno anche di use secrets)

secret-versions
Verbi Autorizzazioni API completamente coperte API parzialmente coperte
ispezionare

SECRET_VERSION_INSPECT

ListSecretVersions

nessuno

letto

ISPEZIONA +

SECRET_VERSION_READ

ISPEZIONA +

GetKeyVersion

nessuno

gestisci

LETTURA +

SECRET_VERSION_DELETE

nessun altro

ScheduleSecretVersionDeletion (ha bisogno anche di use secrets)

CancelSecretVersionDeletion (ha bisogno anche di use secrets)

secret-bundles
Verbi Autorizzazioni API completamente coperte API parzialmente coperte
ispezionare

SECRET_BUNDLE_INSPECT

ListSecretBundles

nessuno

letto

ISPEZIONA +

SECRET_BUNDLE_READ

ISPEZIONA +

GetSecretBundle

nessuno

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
ListVaults VAULT_INSPECT
GetVault VAULT_READ
CreateVault VAULT_CREATE
UpdateVault VAULT_UPDATE
ScheduleVaultDeletion VAULT_DELETE
CancelVaultDeletion VAULT_DELETE
ChangeVaultCompartment VAULT_MOVE
BackupVault VAULT_BACKUP
RestoreVaultFromFile VAULT_RESTORE
RestoreVaultFromObjectStore VAULT_RESTORE
ListVaultReplicas VAULT_INSPECT
CreateVaultReplica VAULT_REPLICATE
DeleteVaultReplica VAULT_REPLICATE
GetVaultUsage VAULT_READ
ListKeys KEY_INSPECT
ListKeyVersions KEY_INSPECT
GetKey KEY_READ
CreateKey KEY_CREATE e VAULT_CREATE_KEY
EnableKey KEY_UPDATE
DisableKey KEY_UPDATE
UpdateKey KEY_UPDATE
ScheduleKeyDeletion KEY_DELETE
CancelKeyDeletion KEY_DELETE
ChangeKeyCompartment KEY_MOVE
BackupKey KEY_BACKUP
RestoreKeyFromFile KEY_RESTORE
RestoreKeyFromObjectStore KEY_RESTORE
GetKeyVersion KEY_READ
CreateKeyVersion KEY_ROTATE
ImportKey KEY_IMPORT e VAULT_IMPORT_KEY
ImportKeyVersion KEY_IMPORT
ExportKey KEY_EXPORT
GenerateDataEncryptionKey KEY_ENCRYPT (Utilizzare KEY_ASSOCIATE quando si delegano le autorizzazioni a un servizio integrato)
Encrypt KEY_ENCRYPT (Utilizzare KEY_ASSOCIATE quando si delegano le autorizzazioni a un servizio integrato)
Decrypt KEY_DECRYPT (Utilizzare KEY_ASSOCIATE quando si delegano le autorizzazioni a un servizio integrato)
Sign KEY_SIGN
Verify KEY_VERIFY
CreateSecret KEY_ENCRYPT, KEY_DECRYPT, SECRET_CREATE e VAULT_CREATE_SECRET
UpdateSecret SECRET_UPDATE
ListSecrets SECRET_INSPECT
GetSecret SECRET_READ
RotateSecret SECRET_ROTATE
ScheduleSecretDeletion SECRET_DELETE
ChangeSecretCompartment SECRET_MOVE e SECRET_UPDATE
ListSecretVersions SECRET_VERSION_INSPECT
GetSecretVersion SECRET_VERSION_READ
ScheduleSecretVersionDeletion SECRET_VERSION_DELETE e SECRET_UPDATE
CancelSecretVersionDeletion SECRET_VERSION_DELETE e SECRET_UPDATE
ListSecretBundles SECRET_BUNDLE_INSPECT
GetSecretBundle SECRET_BUNDLE_READ
GetSecretBundleByName SECRET_BUNDLE_READ
ScheduleSecretVersionDeletion SECRET_VERSION_DELETE e SECRET_UPDATE
CancelSecretVersionDeletion SECRET_VERSION_DELETE e SECRET_UPDATE
ListSecretBundles SECRET_BUNDLE_INSPECT
GetSecretBundle SECRET_BUNDLE_READ
GetSecretBundleByName SECRET_BUNDLE_READ
CreateHsmCluster HSM_CLUSTER_CREATE
GetHsmCluster HSM_CLUSTER_READ
GetHsmPartition HSM_CLUSTER_READ
GetPreCoUserCredentials HSM_CLUSTER_UPDATE
DownloadCertificateSigningRequest HSM_CLUSTER_UPDATE
UpdateHsmCluster HSM_CLUSTER_UPDATE
ChangeHsmClusterCompartment HSM_CLUSTER_MOVE
UploadPartitionOwnerCertificate HSM_CLUSTER_UPDATE
ScheduleHsmClusterDeletion HSM_CLUSTER_DELETE
CancelDeletion HSM_CLUSTER_DELETE
ListHsmClusters HSM_CLUSTER_INSPECT
ListHsmPartitions HSM_CLUSTER_INSPECT