Funkce zabezpečeného vydání klíče s využitím AKV a důvěrného computingu Azure (ACC)
Secure Key Release (SKR) je funkce spravovaného HSM služby Azure Key Vault (AKV) a nabídky Premium. Verze zabezpečeného klíče umožňuje vydání chráněného klíče HSM z AKV do ověřeného důvěryhodného spouštěcího prostředí (TEE), jako je například zabezpečená enkláva, TEE založené na virtuálních počítačích atd. SKR přidá další vrstvu ochrany přístupu k dešifrovacím/šifrovacím klíčům dat, kde můžete cílit na prostředí modulu runtime aplikace + TEE se známým přístupem ke klíčovému materiálu. Zásady SKR definované v době vytvoření exportovatelného klíče řídí přístup k těmto klíčům.
Podpora SKR s nabídkami AKV
Celkový tok vydávání zabezpečených klíčů s využitím TEE
SKR může vydávat pouze klíče založené na deklarací identity vygenerovaných službou Microsoft Azure Attestation (MAA). Pro definici zásad SKR existuje úzká integrace s deklaracemi identity MAA.
Následující kroky jsou určené pro AKV Premium.
Krok 1: Vytvoření zálohovaného HSM služby Key Vault Úrovně Premium
Pro vytvoření AKV založeného na Azure CLI postupujte podle podrobností.
Nezapomeňte nastavit hodnotu [--sku] na premium.
Krok 2: Vytvoření zásady bezpečného vydání klíče
Zásada zabezpečeného vydání klíče je zásada verze formátu JSON definovaná zde , která určuje sadu deklarací identity, které se vyžadují kromě autorizace k vydání klíče. Tady jsou deklarace identity založené na MAA, jak je uvedeno zde pro SGX a zde pro AMD SEV-SNP CVM.
Další podrobnosti najdete na stránce s konkrétními příklady TEE. Další informace o gramatikě zásad SKR najdete v tématu Gramatika zásad zabezpečeného klíče služby Azure Key Vault.
Než nastavíte zásadu SKR, nezapomeňte aplikaci TEE spustit prostřednictvím toku vzdáleného ověření identity. Vzdálená ověření identity není součástí tohoto kurzu.
Příklad
{
"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"
}
]
}
]
}
Krok 3: Vytvoření exportovatelného klíče v AKV s připojenými zásadami SKR
Přesné podrobnosti o typu klíče a dalších přidružených atributech najdete tady.
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"
Krok 4: Aplikace spuštěná v rámci TEE, která provádí vzdálené ověření identity
Tento krok může být specifický pro typ TEE, na kterém spouštíte aplikaci Intel SGX enklávy nebo důvěrné virtuální počítače založené na AMD SEV-SNP nebo důvěrné kontejnery spuštěné v enklávách s AMD SEV-SNP atd.
Postupujte podle těchto referenčních příkladů pro různé typy TEE, které nabízí Azure:
- Aplikace v systému AMD EV-SNP založená na CVM provádějícím vydání zabezpečeného klíče
- Důvěrné kontejnery se službou Azure Container Instances (ACI) s kontejnery SKR side-car
- Aplikace založené na Intel SGX provádějící zabezpečené vydání klíče – Implementace Open Source Řešení Mystikos
Nejčastější dotazy
Můžu SKR provádět s netajnými výpočetními nabídkami?
Ne. Zásady připojené k SKR rozumí pouze deklaracím maa, které jsou přidružené k hardwarovým TEE.
Můžu použít vlastního poskytovatele ověření identity nebo službu a tyto deklarace identity použít pro AKV k ověření a uvolnění?
Ne. AKV v současnosti rozumí a integruje se pouze s MAA.
Můžu k provedení klíče RELEASE použít sady SDK AKV?
Ano. Nejnovější sada SDK integrovaná s klíčem podpory rozhraní API 7.3 AKV
Můžete sdílet některé příklady klíčových zásad vydávání verzí?
Ano, tady jsou uvedeny podrobné příklady podle typu TEE.
Můžu k certifikátům a tajným kódům připojit typ zásad SKR?
Ne. V tuto chvíli to není možné.
Reference
CvM v aplikacích AMD SEV-SNP s ukázkovým vydáním zabezpečeného klíče
AKV REST API s podrobnostmi O SKR
Gramatika zásad zabezpečeného vydávání klíčů ve službě Azure Key Vault