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
.
Verbi | Autorizzazioni | API completamente coperte | API parzialmente coperte |
---|---|---|---|
ispezionare | VAULT_INSPECT |
ListVaults
|
nessuno |
letto | ISPEZIONA + VAULT_READ |
ISPEZIONA +
|
nessuno |
utilizzare | LETTURA + VAULT_CREATE_KEY VAULT_IMPORT_KEY VAULT_CREATE_SECRET |
nessun altro |
|
gestisci | UTILIZZO + VAULT_CREATE VAULT_UPDATE VAULT_DELETE VAULT_MOVE VAULT_BACKUP VAULT_RESTORE VAULT_REPLICATE |
UTILIZZO +
|
nessuno |
Verbi | Autorizzazioni | API completamente coperte | API parzialmente coperte |
---|---|---|---|
ispezionare | KEY_INSPECT |
|
nessuno |
letto | ISPEZIONA + KEY_READ |
ISPEZIONA +
|
nessuno |
utilizzare | LETTURA + KEY_ENCRYPT KEY_DECRYPT KEY_EXPORT KEY_SIGN KEY_VERIFY |
LETTURA +
|
nessuno |
gestisci | USE + KEY_CREATE KEY_UPDATE KEY_ROTATE KEY_DELETE KEY_MOVE KEY_IMPORT KEY_BACKUP KEY_RESTORE |
USE +
|
|
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:
- Consenti a un gruppo di utenti di delegare l'uso della chiave in un compartimento
- Consenti a un gruppo dinamico di delegare l'uso della chiave in un compartimento
- Consenti ai servizi per volumi a blocchi, storage degli oggetti, motore Kubernetes e streaming di cifrare e decifrare i volumi, i backup dei volumi, i bucket, i segreti Kubernetes e i pool di flussi
Verbi | Autorizzazioni | API completamente coperte | API parzialmente coperte |
---|---|---|---|
utilizzare | KEY_ASSOCIATE KEY_DISASSOCIATE |
|
nessuno |
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. |
Verbi | Autorizzazioni | API completamente coperte | API parzialmente coperte |
---|---|---|---|
ispezionare | SECRET_INSPECT |
ListSecrets
|
nessuno |
letto | ISPEZIONA + SECRET_READ |
ISPEZIONA +
|
nessuno |
utilizzare | LETTURA + SECRET_UPDATE |
LETTURA +
|
LETTURA +
|
gestisci | UTILIZZO + SECRET_CREATE SECRET_DELETE SECRET_MOVE SECRET_ROTATE |
UTILIZZO +
|
USE +
|
Verbi | Autorizzazioni | API completamente coperte | API parzialmente coperte |
---|---|---|---|
ispezionare | SECRET_VERSION_INSPECT |
ListSecretVersions
|
nessuno |
letto | ISPEZIONA + SECRET_VERSION_READ |
ISPEZIONA +
|
nessuno |
gestisci | LETTURA + SECRET_VERSION_DELETE |
nessun altro |
|
Verbi | Autorizzazioni | API completamente coperte | API parzialmente coperte |
---|---|---|---|
ispezionare | SECRET_BUNDLE_INSPECT |
ListSecretBundles
|
nessuno |
letto | ISPEZIONA + SECRET_BUNDLE_READ |
ISPEZIONA +
|
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 |