Partilhar via


Criar uma versão de imagem criptografada com chaves gerenciadas pelo cliente

Aplica-se a: ✔️ VMs ✔️ Linux VMs ✔️ do Windows Conjuntos ✔️ de escala flexíveis Conjuntos de balanças uniformes

As imagens em uma Galeria de Computação do Azure (anteriormente conhecida como Galeria de Imagens Compartilhadas) são armazenadas como instantâneos. Estas imagens são automaticamente encriptadas através da encriptação AES de 256 bits do lado do servidor. A criptografia do lado do servidor também é compatível com FIPS 140-2. Para obter mais informações sobre os módulos criptográficos subjacentes aos discos gerenciados do Azure, consulte API de criptografia: próxima geração.

Você pode confiar em chaves gerenciadas pela plataforma para a criptografia de suas imagens ou usar suas próprias chaves. Você também pode usar esses dois recursos juntos para criptografia dobrada. Se você optar por gerenciar a criptografia com suas próprias chaves, poderá especificar uma chave gerenciada pelo cliente a ser usada para criptografar e descriptografar todos os discos em suas imagens.

A criptografia do lado do servidor por meio de chaves gerenciadas pelo cliente usa o Cofre de Chaves do Azure. Pode importar as chaves RSA para o cofre de chaves ou gerar novas chaves RSA no Cofre de Chaves do Azure.

Pré-requisitos

Este artigo requer que você já tenha um conjunto de criptografia de disco em cada região onde deseja replicar sua imagem:

  • Para usar apenas uma chave gerenciada pelo cliente, consulte os artigos sobre como habilitar chaves gerenciadas pelo cliente com criptografia do lado do servidor usando o portal do Azure ou o PowerShell.

  • Para usar chaves gerenciadas pela plataforma e gerenciadas pelo cliente (para criptografia dupla), consulte os artigos sobre como habilitar a criptografia dupla em repouso usando o portal do Azure ou o PowerShell.

    Importante

    Você deve usar o link https://aka.ms/diskencryptionupdates para acessar o portal do Azure. A criptografia dupla em repouso não está atualmente visível no portal público do Azure, a menos que você use esse link.

Limitações

Quando utiliza chaves geridas pelo cliente para encriptar imagens num Azure Compute Gallery, aplicam-se estas limitações:

  • Os conjuntos de chaves de criptografia devem estar na mesma assinatura que sua imagem.

  • Os conjuntos de chaves de criptografia são recursos regionais, portanto, cada região requer um conjunto de chaves de criptografia diferente.

  • Depois de usar suas próprias chaves para criptografar uma imagem, você não pode voltar a usar chaves gerenciadas pela plataforma para criptografar essas imagens.

  • Atualmente, a origem da versão da imagem da VM não oferece suporte à criptografia de chave gerenciada pelo cliente.

  • Alguns dos recursos, como replicar uma imagem SSE+CMK, criar uma imagem a partir de disco criptografado SSE+CMK, etc., não são suportados pelo portal.

PowerShell

Para especificar um conjunto de criptografia de disco para uma versão de imagem, use New-AzGalleryImageVersion com o -TargetRegion parâmetro:


$sourceId = <ID of the image version source>

$osDiskImageEncryption = @{DiskEncryptionSetId='subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.Compute/diskEncryptionSets/myDESet'}

$dataDiskImageEncryption1 = @{DiskEncryptionSetId='subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.Compute/diskEncryptionSets/myDESet1';Lun=1}

$dataDiskImageEncryption2 = @{DiskEncryptionSetId='subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.Compute/diskEncryptionSets/myDESet2';Lun=2}

$dataDiskImageEncryptions = @($dataDiskImageEncryption1,$dataDiskImageEncryption2)

$encryption1 = @{OSDiskImage=$osDiskImageEncryption;DataDiskImages=$dataDiskImageEncryptions}

$region1 = @{Name='West US';ReplicaCount=1;StorageAccountType=Standard_LRS;Encryption=$encryption1}

$eastUS2osDiskImageEncryption = @{DiskEncryptionSetId='subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.Compute/diskEncryptionSets/myEastUS2DESet'}

$eastUS2dataDiskImageEncryption1 = @{DiskEncryptionSetId='subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.Compute/diskEncryptionSets/myEastUS2DESet1';Lun=1}

$eastUS2dataDiskImageEncryption2 = @{DiskEncryptionSetId='subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myRG/providers/Microsoft.Compute/diskEncryptionSets/myEastUS2DESet2';Lun=2}

$eastUS2DataDiskImageEncryptions = @($eastUS2dataDiskImageEncryption1,$eastUS2dataDiskImageEncryption2)

$encryption2 = @{OSDiskImage=$eastUS2osDiskImageEncryption;DataDiskImages=$eastUS2DataDiskImageEncryptions}

$region2 = @{Name='East US 2';ReplicaCount=1;StorageAccountType=Standard_LRS;Encryption=$encryption2}

$targetRegion = @($region1, $region2)


# Create the image
New-AzGalleryImageVersion `
   -ResourceGroupName $rgname `
   -GalleryName $galleryName `
   -GalleryImageDefinitionName $imageDefinitionName `
   -Name $versionName -Location $location `
   -SourceImageId $sourceId `
   -ReplicaCount 2 `
   -StorageAccountType Standard_LRS `
   -PublishingProfileEndOfLifeDate '2020-12-01' `
   -TargetRegion $targetRegion

Criar uma VM

Você pode criar uma máquina virtual (VM) a partir de uma Galeria de Computação do Azure e usar chaves gerenciadas pelo cliente para criptografar os discos. A sintaxe é a mesma que criar uma VM generalizada ou especializada a partir de uma imagem. Use o conjunto de parâmetros estendido e adicione Set-AzVMOSDisk -Name $($vmName +"_OSDisk") -DiskEncryptionSetId $diskEncryptionSet.Id -CreateOption FromImage à configuração da VM.

Para discos de dados, adicione o -DiskEncryptionSetId $setID parâmetro quando você usar Add-AzVMDataDisk.

CLI

Para especificar um conjunto de criptografia de disco para uma versão de imagem, use az image gallery create-image-version com o --target-region-encryption parâmetro. O formato for --target-region-encryption é uma lista separada por vírgulas de chaves para criptografar o sistema operacional e os discos de dados. Deve ter a seguinte aparência: <encryption set for the OS disk>,<Lun number of the data disk>,<encryption set for the data disk>,<Lun number for the second data disk>,<encryption set for the second data disk>.

Se a origem do disco do sistema operacional for um disco gerenciado ou uma VM, use --managed-image para especificar a origem da versão da imagem. Neste exemplo, a origem é uma imagem gerenciada que tem um disco do sistema operacional e um disco de dados no LUN 0. O disco do sistema operacional será criptografado com DiskEncryptionSet1 e o disco de dados será criptografado com DiskEncryptionSet2.

az sig image-version create \
   -g MyResourceGroup \
   --gallery-image-version 1.0.0 \
   --location westus \
   --target-regions westus=2=standard_lrs eastus2 \
   --target-region-encryption WestUSDiskEncryptionSet1,0,WestUSDiskEncryptionSet2 EastUS2DiskEncryptionSet1,0,EastUS2DiskEncryptionSet2 \
   --gallery-name MyGallery \
   --gallery-image-definition MyImage \
   --managed-image "/subscriptions/<subscription ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/images/myImage"

Se a origem do disco do sistema operacional for um instantâneo, use --os-snapshot para especificar o disco do sistema operacional. Adicione quaisquer outros instantâneos de disco de dados que também devem fazer parte da versão da imagem. Use --data-snapshot-luns para especificar o LUN e use --data-snapshots para especificar os snapshots.

Neste exemplo, as fontes são instantâneos de disco. Há um disco do sistema operacional e um disco de dados no LUN 0. O disco do sistema operacional será criptografado com DiskEncryptionSet1 e o disco de dados será criptografado com DiskEncryptionSet2.

az sig image-version create \
   -g MyResourceGroup \
   --gallery-image-version 1.0.0 \
   --location westus\
   --target-regions westus=2=standard_lrs eastus\
   --target-region-encryption WestUSDiskEncryptionSet1,0,WestUSDiskEncryptionSet2 EastUS2DiskEncryptionSet1,0,EastUS2DiskEncryptionSet2 \
   --os-snapshot "/subscriptions/<subscription ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/myOSSnapshot" \
   --data-snapshot-luns 0 \
   --data-snapshots "/subscriptions/<subscription ID>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/snapshots/myDDSnapshot" \
   --gallery-name MyGallery \
   --gallery-image-definition MyImage 
   

Criar a VM

Você pode criar uma VM a partir de uma Galeria de Computação do Azure e usar chaves gerenciadas pelo cliente para criptografar os discos. A sintaxe é a mesma que criar uma VM generalizada ou especializada com a adição do --os-disk-encryption-set parâmetro. Para discos de dados, adicione --data-disk-encryption-sets com uma lista delimitada por espaço dos conjuntos de criptografia de disco para os discos de dados.

Portal

Ao criar sua versão de imagem no portal, você pode usar a guia Criptografia para aplicar seus conjuntos de criptografia de armazenamento.

  1. Na página Criar uma versão da imagem, selecione a guia Criptografia.
  2. Em Tipo de criptografia, selecione Criptografia em repouso com uma chave gerenciada pelo cliente ou Criptografia dupla com chaves gerenciadas pela plataforma e gerenciadas pelo cliente.
  3. Para cada disco na imagem, selecione um conjunto de criptografia na lista suspensa Conjunto de criptografia de disco.

Criar a VM

Pode criar uma VM a partir de uma versão da imagem e utilizar chaves geridas pelo cliente para encriptar os discos. Ao criar a VM no portal, na guia Discos , selecione Criptografia em repouso com chaves gerenciadas pelo cliente ou Criptografia dupla com chaves gerenciadas pela plataforma e gerenciadas pelo cliente para o tipo de criptografia. Pode selecionar o conjunto de encriptação na lista pendente.

Próximos passos

Saiba mais sobre a encriptação de disco do lado do servidor.

Para obter informações sobre como fornecer informações do plano de compra, consulte Fornecer informações do plano de compra do Azure Marketplace ao criar imagens.