Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Secure Key Release (SKR) ist eine Funktionalität des verwalteten HSM- und Premium-Angebots von Azure Key Vault (AKV). Secure Key Release ermöglicht die Freigabe eines HSM-geschützten Schlüssels aus AKV an eine attestierte Trusted Execution Environment (TEE), z. B. eine sichere Enklave oder VM-basierte TEEs. SKR fügt Ihren Schlüsseln zur Datenentschlüsselung bzw. -verschlüsselung eine zusätzliche Schutzebene für den Zugriff hinzu, indem Sie den Zugriff auf das Schlüsselmaterial gezielt einer Anwendung und einer TEE-Laufzeitumgebung mit bekannter Konfiguration gewähren können. Die zum Zeitpunkt der exportierbaren Schlüsselerstellung definierten SKR-Richtlinien steuern den Zugriff auf diese Schlüssel.
SKR-Support mit AKV-Angeboten
Der gesamte Ablauf der sicheren Schlüsselfreigabe mit TEE
SKR kann Schlüssel nur auf Grundlage der von Microsoft Azure Attestation (MAA) generierten Claims freigeben. Die SKR-Richtliniendefinition ist eng mit den MAA-Claims verknüpft.
Die folgenden Schritte gelten für AKV Premium.
Schritt 1: Erstellen Sie einen HSM-gesicherten Key Vault Premium
Hier finden Sie Details zum Erstellen von AKV mit der Az CLI
Stellen Sie sicher, dass Sie den Wert von [--sku] auf „premium“ festlegen.
Schritt 2: Erstellen einer Secure Key Release-Richtlinie
Eine Secure Key Release-Richtlinie ist eine Freigaberichtlinie im JSON-Format (wie hier definiert), die zusätzlich zur Autorisierung zum Freigeben des Schlüssels eine Reihe von erforderlichen Ansprüchen angibt. Die hier genannten Claims sind MAA-basierte Claims, wie hier für SGX und hier für AMD SEV-SNP CVM referenziert.
Weitere Details finden Sie auf der TEE-spezifischen Beispielseite. Informationen zur SKR-Richtliniengrammatik finden Sie unter Secure Key Release-Richtliniengrammatik für Azure Key Vault.
Bevor Sie eine SKR-Richtlinie festlegen, stellen Sie sicher, dass Sie Ihre TEE-Anwendung den Remote-Attestierungsprozess durchlaufen lassen. Die Remoteattestierung wird in diesem Tutorial nicht behandelt.
Beispiel
{
"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"
}
]
}
]
}
Schritt 3: Erstellen eines exportierbaren Schlüssels in AKV mit angefügter SKR-Richtlinie
Genaue Details zum Schlüsseltyp und anderen zugeordneten Attributen finden Sie hier.
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"
Schritt 4: Anwendung, die in einer TEE ausgeführt wird und einen Remotenachweis durchführt
Dieser Schritt kann spezifisch für den Typ der TEE sein, in der Sie Ihre Anwendung ausführen, z. B. Intel SGX Enclaves, AMD-SEV-SNP-basierte Confidential Virtual Machines (CVMs) oder Confidential Containers, die in CVM-Enklaven mit AMD SEV-SNP ausgeführt werden, usw.
Verwenden Sie diese Referenzbeispiele für verschiedene TEE-Typen, die mit Azure angeboten werden:
- Anwendung auf AMD EV-SNP-basierter CVM-Instanz, die den Secure Key Release-Vorgang durchführt
- Vertrauliche Container mit Azure Container Instances (ACI) mit SKR-Sidecar-Containern
- Intel SGX-basierte Anwendungen, die den Secure Key Release-Vorgang durchführen – Open-Source-Lösung für Mystikos-Implementierung
Häufig gestellte Fragen (FAQ)
Kann ich SKR mit Angeboten ohne Confidential Computing durchführen?
Ja. Secure Key Release ist eine Funktion von Azure Key Vault Premium und Managed HSM. Die Release-Operation validiert ein signiertes Microsoft Azure Attestation (MAA)-Token gegen die Release-Policy des Schlüssels, unabhängig vom Rechentyp. Vertrauliche Rechenleistungen (vertrauliche VMs, vertrauliche Container) sind die häufigste Quelle dieser Tokens, da sie hardwarebasierte TEE-Ansprüche enthalten, aber nicht erforderlich sind. Vertrauenswürdige Start-VMs erzeugen außerdem MAA-Attestierungstoken – zum Beispiel den secureboot-Anspruch und die vom vTPM gemessenen PCR-Ansprüche x-ms-azurevm-attested-pcr-values-PCR-Ansprüche – und eine Freigaberichtlinie kann die Schlüsselfreigabe von diesen Ansprüchen abhängig machen. Für die Tokenanforderungen und die Anspruchsstruktur siehe Azure Key Vault Secure Key Release Policy Grammatik. Confidential Computing schützt zudem das freigegebene Schlüsselmaterial im Speicher vor dem Host; verwenden Sie ein Confidential Computing-Angebot, wenn dieser Schutz erforderlich ist.
Kann ich meinen eigenen Nachweisanbieter oder Dienst nutzen und diese Ansprüche für AKV zur Überprüfung und Freigabe verwenden?
Microsoft Azure Attestation ist der native integrierte Attestationsdienst. Eine Freigaberichtlinie kann auch Token einer anderen Attestationsbehörde validieren, vorausgesetzt, das Token entspricht der erwarteten Struktur, unterstützt OpenID Connect, trägt die erwarteten Ansprüche und ist von einem Zertifikat unterzeichnet, das an eine öffentliche CA gekettet wird, der Key Vault vertraut – derzeit DigiCert. Weitere Informationen finden Sie unter der Grammatik der Azure Key Vault Secure Key Release Policy.
Kann ich AKV-SDKs für die Schlüsselfreigabe verwenden?
Ja. Das neueste SDK, das in Version 7.3 der AKV-APIs integriert ist, unterstützt die Schlüsselfreigabe.
Gibt es Beispiele für die wichtigsten Freigaberichtlinien?
Ja, detaillierte Beispiele nach TEE-Typ sind hier aufgeführt.
Kann ich einen SKR-Richtlinientyp mit Zertifikaten und Geheimnissen anhängen?
Nein Derzeit leider nicht.
Verweise
Azure Container Instance mit Confidential Containers: Secure Key Release mit Container-Sidecars
CVM für AMD SEV-SNP-Anwendungen mit Secure Key Release-Beispiel
Secure Key Release-Richtliniengrammatik in Azure Key Vault
Schützen Sie geistiges Eigentum in Azure-VMs mit per Attestierung gesteuerter Secure Key Release