Dettagli per Vault, Key Management e Secrets
In questo argomento vengono descritti i dettagli relativi alla scrittura dei criteri per controllare l'accesso al servizio Vault.
Risorse singole - Tipi
vaults
keys
key-delegate
hsm-cluster
secrets
secret-versions
secret-bundles
secret-replication
Tipo di risorsa aggregato
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 risorsa segreti. I tipi di risorse segrete includono solo secrets, secret-versions e secret-bundles. Tenere presente che il tipo di risorsa secret-replication NON è incluso nel verbo secret-family.
Per i dettagli delle operazioni API coperte da ciascun verbo, vedere la tabella in Dettagli per le combinazioni di verbi + tipi di risorsa per ogni singolo tipo di risorsa incluso in secret-family.
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 non codificato, 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 per 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 operazioni autorizzazioni e API coperte da ciascun verbo. Il livello di accesso è cumulativo come si va da 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 "no extra" indica l'assenza di 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, le autorizzazioni KEY_ENCRYPT e KEY_DECRYPT e una serie di operazioni API (Encrypt, Decrypt e GenerateDataEncryptionKey). Il verbo manage consente ancora più autorizzazioni e operazioni API rispetto al verbo use.
| Verbs | Autorizzazioni | API completamente coperte | API parzialmente coperte |
|---|---|---|---|
| ispezionare | VAULT_INSPECT |
ListVaults
|
nessuno |
| leggi | ISPEZIONA + VAULT_READ |
ISPEZIONA +
|
nessuno |
| usa | LEGGI + VAULT_CREATE_KEY VAULT_IMPORT_KEY VAULT_CREATE_SECRET |
nessun extra |
|
| gestisci | USE + VAULT_CREATE VAULT_UPDATE VAULT_DELETE VAULT_MOVE VAULT_BACKUP VAULT_RESTORE VAULT_REPLICATE |
USE +
|
nessuno |
| Verbs | Autorizzazioni | API completamente coperte | API parzialmente coperte |
|---|---|---|---|
| ispezionare | KEY_INSPECT |
|
nessuno |
| leggi | ISPEZIONA + KEY_READ |
ISPEZIONA +
|
nessuno |
| usa | LEGGI + KEY_ENCRYPT KEY_DECRYPT KEY_EXPORT KEY_SIGN KEY_VERIFY |
LEGGI +
|
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 consentire al servizio di storage degli oggetti di 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 dispongono piuttosto dell'autorizzazione per consentire ai servizi specificati di utilizzare la chiave. Per informazioni dettagliate, vedere i criteri comuni riportati di seguito.
- 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 di volumi a blocchi, storage degli oggetti, Kubernetes Engine e streaming di cifrare e decifrare volumi, backup dei volumi, bucket, segreti Kubernetes e pool di flussi
| Verbs | Autorizzazioni | API completamente coperte | API parzialmente coperte |
|---|---|---|---|
| usa | KEY_ASSOCIATE KEY_DISASSOCIATE |
|
nessuno |
| Verbs | Autorizzazioni | API completamente coperta | API parzialmente coperta |
|---|---|---|---|
| Ispeziona |
HSM_CLUSTER_INSPECT |
ListHsmClusters ListHsmPartitions |
Nessuno |
|
leggi |
ISPEZIONA + HSM_CLUSTER_READ |
GetHsmCluster GetHsmPartition |
Nessuno |
|
usa |
LEGGI + HSM_CLUSTER_UPDATE |
GetPreCoUserCredentials DownloadCertificateSigningRequest UpdateHsmCluster UploadPartitionCertificates |
Nessuno |
|
gestisci |
USE + HSM_CLUSTER_DELETE HSM_CLUSTER_CREATE HSM_CLUSTER_MOVE |
CreateHsmCluster ChangeHsmClusterCompartment ScheduleHsmClusterDeletion CancelHsmClusterDeletion |
Nessuno |
| Verbs | Autorizzazioni | API completamente coperte | API parzialmente coperte |
|---|---|---|---|
| ispezionare | SECRET_INSPECT |
ListSecrets
|
nessuno |
| leggi | ISPEZIONA + SECRET_READ |
ISPEZIONA +
|
nessuno |
| usa | LEGGI + SECRET_UPDATE |
LEGGI +
|
LEGGI +
|
| gestisci | USE + SECRET_CREATE SECRET_DELETE SECRET_MOVE SECRET_ROTATE SECRET_REPLICATE_CONFIGURE |
USE +
|
USE +
|
| Verbs | Autorizzazioni | API completamente coperte | API parzialmente coperte |
|---|---|---|---|
| usa | SECRET_REPLICATE |
none
|
è richiesta l'autorizzazione per essere concessa a un principal risorsa vaultsecret per consentire la replica dei segreti tra più aree. |
| Verbs | Autorizzazioni | API completamente coperte | API parzialmente coperte |
|---|---|---|---|
| ispezionare | SECRET_VERSION_INSPECT |
ListSecretVersions
|
nessuno |
| leggi | ISPEZIONA + SECRET_VERSION_READ |
ISPEZIONA +
|
nessuno |
| gestisci | LEGGI + SECRET_VERSION_DELETE |
nessun extra |
|
| Verbs | Autorizzazioni | API completamente coperte | API parzialmente coperte |
|---|---|---|---|
| ispezionare | SECRET_BUNDLE_INSPECT |
ListSecretBundles
|
nessuno |
| leggi | 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 delega dell'autorizzazione a un servizio integrato) |
Encrypt
|
KEY_ENCRYPT (utilizzare KEY_ASSOCIATE quando si delega dell'autorizzazione a un servizio integrato) |
Decrypt
|
KEY_DECRYPT (utilizzare KEY_ASSOCIATE quando si delega dell'autorizzazione a un servizio integrato) |
Sign |
KEY_SIGN |
Verify |
KEY_VERIFY |
CreateSecret
|
KEY_ENCRYPT, KEY_DECRYPT, SECRET_CREATE e VAULT_CREATE_SECRET (aggiungere SECRET_REPLICATE_CONFIGURE per consentire la configurazione della replica tra più aree nell'area del segreto di origine) |
UpdateSecret
|
SECRET_UPDATE (aggiungere SECRET_REPLICATE_CONFIGURE per consentire la configurazione della replica tra più aree nell'area del segreto di origine) |
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 |