Použití Azure CLI k povolení šifrování na straně serveru s využitím klíčů spravovaných zákazníkem pro spravované disky
Platí pro: ✔️ Virtuální počítače s Windows s Linuxem ✔️ ✔️ – Flexibilní škálovací sady Uniform Scale Sets ✔️
Azure Disk Storage umožňuje spravovat vlastní klíče při použití šifrování na straně serveru (SSE) pro spravované disky, pokud se rozhodnete. Koncepční informace o službě SSE s klíči spravovanými zákazníkem a dalších typech šifrování spravovaných disků najdete v části Klíče spravované zákazníkem v našem článku o šifrování disků.
Omezení
Klíče spravované zákazníkem mají prozatím následující omezení:
- Pokud je tato funkce povolená pro disk s přírůstkovými snímky, není možné ji na tomto disku ani jeho snímky zakázat. Pokud chcete tento problém obejít, zkopírujte všechna data na zcela jiný spravovaný disk, který nepoužívá klíče spravované zákazníkem. Můžete to udělat pomocí Azure CLI nebo modulu Azure PowerShellu.
- Disk a všechny přidružené přírůstkové snímky musí mít stejnou sadu šifrování disku.
- Podporují se pouze klíče RSA softwaru a HSM o velikosti 2 048 bitů, 3 072bitové a 4 096bitové verze, žádné jiné klíče ani velikosti.
- Klíče HSM vyžadují úroveň Premium trezorů klíčů Azure.
- Pouze pro disky Úrovně Ultra a disky SSD úrovně Premium v2:
- Disky vytvořené ze snímků, které jsou šifrované pomocí šifrování na straně serveru a klíčů spravovaných zákazníkem, musí být šifrované pomocí stejné sady šifrování disku.
- Spravované identity přiřazené uživatelem se nepodporují pro disky Úrovně Ultra a disky SSD úrovně Premium v2 šifrované pomocí klíčů spravovaných zákazníkem.
- Šifrování disků Úrovně Ultra a disků SSD úrovně Premium v2 pomocí klíčů spravovaných zákazníkem pomocí služby Azure Key Vault uložených v jiném tenantovi Microsoft Entra ID se v současné době nepodporuje.
- Většina prostředků souvisejících s klíči spravovanými zákazníkem (sady šifrování disků, virtuální počítače, disky a snímky) musí být ve stejném předplatném a oblasti.
- Služby Azure Key Vault se můžou používat z jiného předplatného, ale musí být ve stejné oblasti jako vaše sada šifrování disků. Ve verzi Preview můžete používat služby Azure Key Vault z různých tenantů Microsoft Entra.
- Disky šifrované pomocí klíčů spravovaných zákazníkem se můžou přesunout jenom do jiné skupiny prostředků, pokud je virtuální počítač, ke kterému jsou připojeni, uvolněný.
- Disky, snímky a image šifrované pomocí klíčů spravovaných zákazníkem se mezi předplatnými nedají přesouvat.
- Spravované disky aktuálně nebo dříve šifrované pomocí služby Azure Disk Encryption se nedají šifrovat pomocí klíčů spravovaných zákazníkem.
- Může vytvořit až 5 000 sad šifrování disků pro každou oblast na předplatné.
- Informace o používání klíčů spravovaných zákazníkem se sdílenými galeriemi imagí najdete v tématu Preview: Použití klíčů spravovaných zákazníkem pro šifrování imagí.
Vytvoření zdrojů
Jakmile je tato funkce povolená, budete muset nastavit DiskEncryptionSet a azure Key Vault nebo spravovaný HSM služby Azure Key Vault.
Azure Key Vault
- Nainstalujte nejnovější Azure CLI a přihlaste se k účtu Azure pomocí příkazu az login.
- Vytvoření služby Azure Key Vault a šifrovacího klíče
Při vytváření služby Key Vault je nutné povolit ochranu před vymazáním. Ochrana před vymazáním zajistí, že odstraněný klíč nebude možné trvale odstranit, dokud doba uchovávání nepřesběne. Tato nastavení chrání před ztrátou dat z důvodu náhodného odstranění. Tato nastavení jsou povinná při použití služby Key Vault pro šifrování spravovaných disků.
Důležité
Pokud to uděláte, nemusí dojít k problémům při přiřazování dalších disků k prostředku na webu Azure Portal.
subscriptionId=yourSubscriptionID
rgName=yourResourceGroupName
location=westcentralus
keyVaultName=yourKeyVaultName
keyName=yourKeyName
diskEncryptionSetName=yourDiskEncryptionSetName
diskName=yourDiskName
az account set --subscription $subscriptionId
az group create --resource-group $rgName --location $location
az keyvault create -n $keyVaultName \
-g $rgName \
-l $location \
--enable-purge-protection true
az keyvault key create --vault-name $keyVaultName \
-n $keyName \
--protection software
- Vytvořte diskEncryptionSet. Pokud chcete povolit automatické obměně klíče, můžete nastavit automatické obměně klíče rovnou hodnotě true. Když povolíte automatickou obměnu, systém automaticky aktualizuje všechny spravované disky, snímky a image odkazující na sadu šifrování disku tak, aby používal novou verzi klíče do jedné hodiny.
keyVaultKeyUrl=$(az keyvault key show --vault-name $keyVaultName --name $keyName --query [key.kid] -o tsv)
az disk-encryption-set create -n $diskEncryptionSetName \
-l $location \
-g $rgName \
--key-url $keyVaultKeyUrl \
--enable-auto-key-rotation false
- Udělte prostředku DiskEncryptionSet přístup k trezoru klíčů.
Poznámka:
Vytvoření identity diskEncryptionSet ve vašem ID Microsoft Entra může trvat několik minut. Pokud se při spuštění následujícího příkazu zobrazí chyba Typu Nejde najít objekt služby Active Directory, počkejte několik minut a zkuste to znovu.
desIdentity=$(az disk-encryption-set show -n $diskEncryptionSetName -g $rgName --query [identity.principalId] -o tsv)
az keyvault set-policy -n $keyVaultName \
-g $rgName \
--object-id $desIdentity \
--key-permissions wrapkey unwrapkey get
Managed HSM služby Azure Key Vault
Případně můžete ke zpracování klíčů použít spravovaný HSM.
K tomu je nutné splnit následující požadavky:
- Nainstalujte nejnovější Azure CLI a přihlaste se k účtu Azure pomocí příkazu az login.
- Vytvoření a konfigurace spravovaného HSM
- Přiřaďte uživateli oprávnění, aby mohli spravovat spravovaný HSM.
Konfigurace
Po vytvoření spravovaného HSM a přidání oprávnění povolte ochranu před vymazáním a vytvořte šifrovací klíč.
subscriptionId=yourSubscriptionID
rgName=yourResourceGroupName
location=westcentralus
keyVaultName=yourKeyVaultName
keyName=yourKeyName
diskEncryptionSetName=yourDiskEncryptionSetName
diskName=yourDiskName
az account set --subscription $subscriptionId
az keyvault update-hsm --subscription $subscriptionId -g $rgName --hsm-name $keyVaultName --enable-purge-protection true
az keyvault key create --hsm-name $keyVaultName --name $keyName --ops wrapKey unwrapKey --kty RSA-HSM --size 2048
Pak vytvořte DiskEncryptionSet.
keyVaultKeyUrl=$(az keyvault key show --vault-name $keyVaultName --name $keyName --query [key.kid] -o tsv)
az disk-encryption-set create -n $diskEncryptionSetName \
-l $location \
-g $rgName \
--key-url $keyVaultKeyUrl \
--enable-auto-key-rotation false
Nakonec udělte DiskEncryptionSet přístup ke spravovanému HSM.
desIdentity=$(az disk-encryption-set show -n $diskEncryptionSetName -g $rgName --query [identity.principalId] -o tsv)
az keyvault role assignment create --hsm-name $keyVaultName --role "Managed HSM Crypto Service Encryption User" --assignee $desIdentity --scope /keys
Teď, když jste tyto prostředky vytvořili a nakonfigurovali, můžete je použít k zabezpečení spravovaných disků. Následující odkazy obsahují ukázkové skripty, z nichž každý má odpovídající scénář, který můžete použít k zabezpečení spravovaných disků.
Příklady
Vytvoření virtuálního počítače pomocí image Marketplace, šifrování disků s operačním systémem a datových disků pomocí klíčů spravovaných zákazníkem
rgName=yourResourceGroupName
vmName=yourVMName
location=westcentralus
vmSize=Standard_DS3_V2
image=LinuxImageURN
diskEncryptionSetName=yourDiskencryptionSetName
diskEncryptionSetId=$(az disk-encryption-set show -n $diskEncryptionSetName -g $rgName --query [id] -o tsv)
az vm create -g $rgName -n $vmName -l $location --image $image --size $vmSize --generate-ssh-keys --os-disk-encryption-set $diskEncryptionSetId --data-disk-sizes-gb 128 128 --data-disk-encryption-sets $diskEncryptionSetId $diskEncryptionSetId
Šifrování existujících spravovaných disků
Vaše stávající disky nesmí být připojené ke spuštěném virtuálnímu počítači, abyste je mohli zašifrovat pomocí následujícího skriptu:
rgName=yourResourceGroupName
diskName=yourDiskName
diskEncryptionSetName=yourDiskEncryptionSetName
az disk update -n $diskName -g $rgName --encryption-type EncryptionAtRestWithCustomerKey --disk-encryption-set $diskEncryptionSetId
Vytvoření škálovací sady virtuálních počítačů pomocí image Marketplace, šifrování disků s operačním systémem a datových disků pomocí klíčů spravovaných zákazníkem
rgName=yourResourceGroupName
vmssName=yourVMSSName
location=westcentralus
vmSize=Standard_DS3_V2
image=LinuxImageURN
diskEncryptionSetName=yourDiskencryptionSetName
diskEncryptionSetId=$(az disk-encryption-set show -n $diskEncryptionSetName -g $rgName --query [id] -o tsv)
az vmss create -g $rgName -n $vmssName --image $image --upgrade-policy automatic --admin-username azureuser --generate-ssh-keys --os-disk-encryption-set $diskEncryptionSetId --data-disk-sizes-gb 64 128 --data-disk-encryption-sets $diskEncryptionSetId $diskEncryptionSetId
Vytvoření prázdného disku šifrovaného pomocí šifrování na straně serveru s klíči spravovanými zákazníkem a jeho připojení k virtuálnímu počítači
vmName=yourVMName
rgName=yourResourceGroupName
diskName=yourDiskName
diskSkuName=Premium_LRS
diskSizeinGiB=30
location=westcentralus
diskLUN=2
diskEncryptionSetName=yourDiskEncryptionSetName
diskEncryptionSetId=$(az disk-encryption-set show -n $diskEncryptionSetName -g $rgName --query [id] -o tsv)
az disk create -n $diskName -g $rgName -l $location --encryption-type EncryptionAtRestWithCustomerKey --disk-encryption-set $diskEncryptionSetId --size-gb $diskSizeinGiB --sku $diskSkuName
diskId=$(az disk show -n $diskName -g $rgName --query [id] -o tsv)
az vm disk attach --vm-name $vmName --lun $diskLUN --ids $diskId
Změňte klíč diskEncryptionSet tak, aby se klíč otočil pro všechny prostředky odkazující na DiskEncryptionSet.
rgName=yourResourceGroupName
keyVaultName=yourKeyVaultName
keyName=yourKeyName
diskEncryptionSetName=yourDiskEncryptionSetName
keyVaultId=$(az keyvault show --name $keyVaultName--query [id] -o tsv)
keyVaultKeyUrl=$(az keyvault key show --vault-name $keyVaultName --name $keyName --query [key.kid] -o tsv)
az disk-encryption-set update -n keyrotationdes -g keyrotationtesting --key-url $keyVaultKeyUrl --source-vault $keyVaultId
Zjištění stavu šifrování disku na straně serveru
az disk show -g yourResourceGroupName -n yourDiskName --query [encryption.type] -o tsv
Důležité
Klíče spravované zákazníkem spoléhají na spravované identity pro prostředky Azure, a to je funkce Microsoft Entra ID. Při konfiguraci klíčů spravovaných zákazníkem se spravovaná identita automaticky přiřadí vašim prostředkům v rámci krytů. Pokud následně přesunete předplatné, skupinu prostředků nebo spravovaný disk z jednoho adresáře Microsoft Entra do jiného, spravovaná identita přidružená ke spravovaným diskům se nepřenese do nového tenanta, takže klíče spravované zákazníkem už nemusí fungovat. Další informace naleznete v tématu Převod předplatného mezi adresáři Microsoft Entra.
Další kroky
- Prozkoumejte šablony Azure Resource Manageru pro vytváření šifrovaných disků pomocí klíčů spravovaných zákazníkem.
- Replikace počítačů s disky s povolenými klíči spravovanými zákazníkem
- Nastavení zotavení po havárii virtuálních počítačů VMware do Azure s využitím PowerShellu
- Nastavení zotavení po havárii do Azure pro virtuální počítače Hyper-V s využitím PowerShellu a Azure Resource Manageru
- Viz Vytvoření spravovaného disku ze snímku pomocí rozhraní příkazového řádku pro ukázku kódu.