Vytvoření a konfigurace trezoru klíčů pro službu Azure Disk Encryption
Azure Disk Encryption používá Azure Key Vault k řízení a správě klíčů a tajných kódů šifrování disků. Další informace o trezorech klíčů najdete v tématech Začínáme s Azure Key Vault a Zabezpečení trezoru klíčů.
Vytvoření a konfigurace trezoru klíčů pro použití se službou Azure Disk Encryption zahrnuje tři kroky:
- V případě potřeby se vytvoří skupina prostředků.
- Vytvoření trezoru klíčů
- Nastavení pokročilých zásad přístupu trezoru klíčů
Pokud chcete, můžete také vygenerovat nebo importovat šifrovací klíč klíče (KEK).
Instalace nástrojů a připojení k Azure
Kroky v tomto článku můžete dokončit pomocí Azure CLI, modulu Azure PowerShell Az nebo Azure Portal.
Vytvoření skupiny prostředků
Pokud už skupinu prostředků máte, můžete přeskočit k části Vytvoření trezoru klíčů.
Skupina prostředků je logický kontejner, ve kterém se nasazují a spravují prostředky Azure.
Skupinu prostředků vytvořte pomocí příkazu az group create Azure CLI, příkazu New-AzResourceGroup Azure PowerShell nebo z Azure Portal.
Azure CLI
az group create --name "myResourceGroup" --location eastus
Azure PowerShell
New-AzResourceGroup -Name "myResourceGroup" -Location "EastUS"
Vytvořte trezor klíčů.
Pokud už trezor klíčů máte, můžete přeskočit k tématu Nastavení pokročilých zásad přístupu trezoru klíčů.
Vytvořte trezor klíčů pomocí příkazu az keyvault create Azure CLI, příkazu New-AzKeyvault Azure PowerShell, Azure Portal nebo šablony Resource Manager.
Upozornění
Pokud chcete zajistit, aby šifrovací tajné kódy nepřekračovaly hranice oblastí, musíte vytvořit a použít trezor klíčů, který je ve stejné oblasti a tenantovi jako virtuální počítače, které se mají šifrovat.
Každý Key Vault musí mít jedinečný název. V následujících příkladech nahraďte <your-unique-keyvault-name> názvem vašeho trezoru klíčů.
Azure CLI
Při vytváření trezoru klíčů pomocí Azure CLI přidejte příznak --enabled-for-disk-encryption.
az keyvault create --name "<your-unique-keyvault-name>" --resource-group "myResourceGroup" --location "eastus" --enabled-for-disk-encryption
Azure PowerShell
Při vytváření trezoru klíčů pomocí Azure PowerShell přidejte příznak -EnabledForDiskEncryption.
New-AzKeyvault -name "<your-unique-keyvault-name>" -ResourceGroupName "myResourceGroup" -Location "eastus" -EnabledForDiskEncryption
Šablona Resource Manageru
Trezor klíčů můžete také vytvořit pomocí šablony Resource Manager.
- V šabloně Azure Pro rychlý start klikněte na Nasadit do Azure.
- Vyberte předplatné, skupinu prostředků, umístění skupiny prostředků, název Key Vault, ID objektu, právní podmínky a smlouvu a pak klikněte na Koupit.
Nastavte pokročilé zásady přístupu trezoru klíčů.
Důležité
Nově vytvořené trezory klíčů mají ve výchozím nastavení obnovitelné odstranění. Pokud používáte již existující trezor klíčů, musíte povolit obnovitelné odstranění. Viz Přehled obnovitelného odstranění Azure Key Vault.
Platforma Azure potřebuje přístup k šifrovacím klíčům nebo tajným klíčům ve vašem trezoru klíčů, aby je bylo možné zpřístupnit virtuálnímu počítači pro spouštění a dešifrování svazků.
Pokud jste trezor klíčů nepovolili pro šifrování disků, nasazení nebo nasazení šablony v okamžiku vytvoření (jak je znázorněno v předchozím kroku), musíte aktualizovat jeho pokročilé zásady přístupu.
Azure CLI
Pomocí příkazu az keyvault update povolte šifrování disku pro trezor klíčů.
Povolit Key Vault pro šifrování disku: Šifrování pro disk je povinné.
az keyvault update --name "<your-unique-keyvault-name>" --resource-group "MyResourceGroup" --enabled-for-disk-encryption "true"
V případě potřeby povolte Key Vault pro nasazení: Povolí poskytovateli prostředků Microsoft.Compute načíst tajné kódy z tohoto trezoru klíčů, když se na tento trezor klíčů odkazuje při vytváření prostředku, například při vytváření virtuálního počítače.
az keyvault update --name "<your-unique-keyvault-name>" --resource-group "MyResourceGroup" --enabled-for-deployment "true"
V případě potřeby povolte Key Vault pro nasazení šablony: Povolte Resource Manager načítat tajné kódy z trezoru.
az keyvault update --name "<your-unique-keyvault-name>" --resource-group "MyResourceGroup" --enabled-for-template-deployment "true"
Azure PowerShell
K povolení šifrování disků pro trezor klíčů použijte rutinu PowerShellu Set-AzKeyVaultAccessPolicy .
Povolit Key Vault pro šifrování disku: Pro Azure Disk Encryption se vyžaduje EnabledForDiskEncryption.
Set-AzKeyVaultAccessPolicy -VaultName "<your-unique-keyvault-name>" -ResourceGroupName "MyResourceGroup" -EnabledForDiskEncryption
V případě potřeby povolte Key Vault pro nasazení: Povolí poskytovateli prostředků Microsoft.Compute načíst tajné kódy z tohoto trezoru klíčů, když se na tento trezor klíčů odkazuje při vytváření prostředku, například při vytváření virtuálního počítače.
Set-AzKeyVaultAccessPolicy -VaultName "<your-unique-keyvault-name>" -ResourceGroupName "MyResourceGroup" -EnabledForDeployment
V případě potřeby povolte Key Vault pro nasazení šablony: Umožňuje azure Resource Manager získat tajné kódy z tohoto trezoru klíčů, když se na tento trezor klíčů odkazuje v nasazení šablony.
Set-AzKeyVaultAccessPolicy -VaultName "<your-unique-keyvault-name>" -ResourceGroupName "MyResourceGroup" -EnabledForTemplateDeployment
portál Azure
Vyberte trezor klíčů a přejděte na Zásady přístupu.
V části Povolit přístup k zaškrtněte políčko Azure Disk Encryption pro šifrování svazků.
V případě potřeby vyberte Azure Virtual Machines pro nasazení nebo azure Resource Manager pro nasazení šablony.
Klikněte na Uložit.
Azure Disk Encryption a automatické obměně
I když azure Key Vault teď nabízí automatické obměně klíčů, není v současné době kompatibilní se službou Azure Disk Encryption. Konkrétně azure Disk Encryption bude i po automatické obměně dál používat původní šifrovací klíč.
Obměně šifrovacího klíče nepoškodí službu Azure Disk Encryption, ale zakáže se "starý" šifrovací klíč (jinými slovy, klíč, který Azure Disk Encryption stále používá).
Nastavení šifrovacího klíče klíče (KEK)
Důležité
Účet spuštěný za účelem povolení šifrování disku přes trezor klíčů musí mít oprávnění čtenáře.
Pokud chcete použít šifrovací klíč klíče (KEK) pro další vrstvu zabezpečení šifrovacích klíčů, přidejte klíč KEK do trezoru klíčů. Při zadání šifrovacího klíče použije Azure Disk Encryption tento klíč k zabalení šifrovacích tajných kódů před zápisem do Key Vault.
Nový klíč KEK můžete vygenerovat pomocí příkazu Azure CLIaz keyvault key create
, rutiny Azure PowerShell Add-AzKeyVaultKey nebo Azure Portal. Musíte vygenerovat typ klíče RSA; Azure Disk Encryption v současné době nepodporuje použití klíčů eliptické křivky.
Místo toho můžete importovat klíč KEK z místního modulu HSM pro správu klíčů. Další informace najdete v dokumentaci k Key Vault.
Adresy URL KEK trezoru klíčů musí mít verze. Azure toto omezení správy verzí vynucuje. Platné tajné kódy a adresy URL KEK najdete v následujících příkladech:
- Příklad platné adresy URL tajného kódu: https://contosovault.vault.azure.net/secrets/EncryptionSecretWithKek/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
- Příklad platné adresy URL KEK: https://contosovault.vault.azure.net/keys/diskencryptionkek/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Azure CLI
Pomocí příkazu Azure CLI az keyvault key create
vygenerujte nový klíč KEK a uložte ho do trezoru klíčů.
az keyvault key create --name "myKEK" --vault-name "<your-unique-keyvault-name>" --kty RSA --size 4096
Místo toho můžete importovat privátní klíč pomocí příkazu Azure CLI az keyvault key import :
V obou případech zadáte název klíče KEK do parametru Azure CLI az vm encryption enable
--key-encryption-key.
az vm encryption enable -g "MyResourceGroup" --name "myVM" --disk-encryption-keyvault "<your-unique-keyvault-name>" --key-encryption-key "myKEK"
Azure PowerShell
Pomocí rutiny Azure PowerShell Add-AzKeyVaultKey vygenerujte nový klíč KEK a uložte ho do trezoru klíčů.
Add-AzKeyVaultKey -Name "myKEK" -VaultName "<your-unique-keyvault-name>" -Destination "HSM" -Size 4096
Místo toho můžete importovat privátní klíč pomocí příkazu Azure PowerShellaz keyvault key import
.
V obou případech zadáte ID trezoru klíčů KEK a adresu URL klíče KEK parametrům Azure PowerShell Set-AzVMDiskEncryptionExtension -KeyEncryptionKeyVaultId a -KeyEncryptionKeyUrl. V tomto příkladu se předpokládá, že používáte stejný trezor klíčů pro šifrovací klíč disku i klíč KEK.
$KeyVault = Get-AzKeyVault -VaultName "<your-unique-keyvault-name>" -ResourceGroupName "myResourceGroup"
$KEK = Get-AzKeyVaultKey -VaultName "<your-unique-keyvault-name>" -Name "myKEK"
Set-AzVMDiskEncryptionExtension -ResourceGroupName MyResourceGroup -VMName "MyVM" -DiskEncryptionKeyVaultUrl $KeyVault.VaultUri -DiskEncryptionKeyVaultId $KeyVault.ResourceId -KeyEncryptionKeyVaultId $KeyVault.ResourceId -KeyEncryptionKeyUrl $KEK.Id -SkipVmBackup -VolumeType All