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.
  • 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:
    • Snímky vytvořené z disků, které jsou šifrované pomocí šifrování na straně serveru a klíčů spravovaných zákazníkem, musí být šifrované pomocí stejných klíčů spravovaných zákazníkem.
    • 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.
  • 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:

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