Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Secure Key Release (SKR) è una funzionalità di Azure Key Vault (AKV) Managed HSM e dell'offerta Premium. Secure Key Release consente di rilasciare una chiave protetta da HSM da AKV verso un Trusted Execution Environment (TEE) attestato, ad esempio un'enclave sicura, TEE basati su VM e così via. SKR aggiunge un ulteriore livello di protezione dell'accesso alle chiavi di decrittografia e crittografia dei dati, consentendo di autorizzare l'accesso al materiale della chiave per una specifica applicazione e un ambiente di runtime TEE con configurazione nota. I criteri SKR definiti al momento della creazione delle chiavi esportabili regolano l'accesso a queste chiavi.
Supporto SKR con offerte AKV
Flusso complessivo del rilascio sicuro delle chiavi con TEE
SKR può rilasciare le chiavi solo in base alle attestazioni generate dall'attestazione di Microsoft Azure (MAA). Vi è una stretta integrazione tra la definizione dei criteri SKR e le attestazioni MAA.
I passaggi seguenti sono relativi ad AKV Premium.
Passaggio 1: Creare un Key Vault Premium supportato da HSM
Assicurarsi di impostare il valore di [--sku] su "premium".
Passaggio 2: Creare un criterio per il rilascio sicuro delle chiavi
Un criterio di Secure Key Release è un criterio di rilascio in formato JSON come definito qui che specifica un set di attestazioni necessarie oltre all'autorizzazione per rilasciare la chiave. Le attestazioni qui sono basate su MAA come indicato qui per SGX e qui per AMD SEV-SNP CVM.
Visita la pagina degli esempi specifica per TEE per maggiori dettagli. Per ulteriori informazioni sulla grammatica dei criteri di SKR, vedere Grammatica dei criteri di Secure Key Release di Azure Key Vault.
Prima di impostare un criterio SKR, assicurarsi di eseguire l'applicazione TEE attraverso il flusso di attestazione remota. L'attestazione remota non viene trattata come parte di questa esercitazione.
Esempio
{
"version": "1.0.0",
"anyOf": [ // Always starts with "anyOf", meaning you can multiple, even varying rules, per authority.
{
"authority": "https://sharedweu.weu.attest.azure.net",
"allOf": [ // can be replaced by "anyOf", though you cannot nest or combine "anyOf" and "allOf" yet.
{
"claim": "x-ms-isolation-tee.x-ms-attestation-type", // These are the MAA claims.
"equals": "sevsnpvm"
},
{
"claim": "x-ms-isolation-tee.x-ms-compliance-status",
"equals": "azure-compliant-cvm"
}
]
}
]
}
Passaggio 3: creare una chiave esportabile in AKV con i criteri SKR associati
I dettagli esatti del tipo di chiave e di altri attributi associati sono disponibili qui.
az keyvault key create --exportable true --vault-name "vault name from step 1" --kty RSA-HSM --name "keyname" --policy "jsonpolicyfromstep3 -can be a path to JSON"
Passaggio 4: un'applicazione in esecuzione in un TEE che effettua un'attestazione remota
Questo passaggio può essere specifico del tipo di Trusted Execution Environment (TEE) in cui esegui l'applicazione: enclave Intel SGX, macchine virtuali confidenziali (CVM) basate su AMD SEV-SNP oppure container confidenziali in esecuzione in enclave CVM con AMD SEV-SNP, e così via.
Segui questi esempi di riferimento per le diverse offerte relative ai vari tipi di TEE disponibili con Azure:
- 'Applicazione all'interno della CVM basata su AMD EV-SNP che esegue Secure Key Release
- Contenitori confidenziali con Istanze di Azure Container (ACI) con contenitori sidecar SKR
- Applicazioni basate su Intel SGX che eseguono Secure Key Release - Open Source Solution Mystikos Implementation
Domande frequenti
Posso eseguire SKR con offerte di calcolo non riservate?
Sì. Secure Key Release è una funzionalità di Azure Key Vault Premium e Managed HSM. L'operazione di rilascio valida un token Microsoft attestazione di Azure (MAA) firmato rispetto alla policy di rilascio della chiave, indipendentemente dal tipo di calcolo. Le offerte di calcolo confidenziale (VM confidenziali, container confidenziali) sono la fonte più comune di questi token perché trasportano richieste TEE basate sull'hardware, ma non sono obbligatorie. Le macchine virtuali Trusted Launch producono anche token di attestazione MAA, ad esempio l’attestazione secureboot e le attestazioni PCR x-ms-azurevm-attested-pcr-values misurate dal vTPM, e un criterio di rilascio può subordinare il rilascio della chiave a tali attestazioni. Per i requisiti dei token e la struttura delle rivendicazioni, vedi Azure Key Vault secure key release policy grammatic. Il calcolo confidenziale protegge inoltre il materiale chiave rilasciato in memoria dall'host; utilizzare un'offerta di calcolo confidenziale quando tale protezione è necessaria.
È possibile utilizzare un provider o un servizio di attestazione di propria scelta e usare tali attestazioni affinché AKV le convalidi e autorizzi il rilascio?
Microsoft attestazione di Azure è il servizio di attestazione integrato nativamente. Una policy di rilascio può anche convalidare i token provenienti da un'altra autorità di attestazione, a condizione che il token sia conforme alla struttura attesa, supporti OpenID Connect, porti le richieste attese e sia firmato da un certificato che si collega a una CA pubblica di cui Key Vault si fida—attualmente DigiCert. Per ulteriori informazioni, consulta la grammatica della policy di rilascio della chiave sicura di Azure Key Vault.
È possibile usare gli SDK AKV per eseguire la chiave RELEASE?
Sì. L'SDK più recente integrato con l'API Azure Key Vault 7.3 supporta l'operazione RELEASE della chiave.
È possibile condividere alcuni esempi dei criteri di rilascio delle chiavi?
Sì, esempi dettagliati per tipo di TEE sono elencati qui.
È possibile associare un criterio di tipo SKR a certificati e segreti?
No. Non al momento.
Riferimenti
Istanza di Azure Container con contenitori riservati Secure Key Release con contenitori collaterali
CVM nelle applicazioni AMD SEV-SNP con esempio di Secure Key Release
API REST AKV con i dettagli SKR
Grammatica dei criteri di Secure Key Release di Azure Key Vault