Creare una versione dell'immagine crittografata con chiavi gestite dal cliente

Si applica a: ✔️ Macchine ✔️ virtuali Linux Macchine virtuali ✔️ Windows Set di scalabilità flessibili Set di scalabilità ✔️ Uniform

Le immagini in una raccolta di calcolo di Azure (in precedenza note come Raccolta immagini condivise) vengono archiviate come snapshot. Queste immagini vengono crittografate automaticamente tramite la crittografia AES lato server a 256 bit. La crittografia lato server è anche conforme a FIPS 140-2. Per altre informazioni sui moduli crittografici sottostanti ai dischi gestiti di Azure, vedere API di crittografia : Next Generation.

È possibile basarsi sulle chiavi gestite dalla piattaforma per la crittografia delle immagini o usare le proprie chiavi. È anche possibile usare entrambe queste funzionalità insieme per la crittografia doppia. Se si sceglie di gestire la crittografia con le proprie chiavi, è possibile specificare una chiave gestita dal cliente da usare per crittografare e decrittografare tutti i dischi nelle immagini.

La crittografia lato server tramite chiavi gestite dal cliente usa Azure Key Vault. È possibile importare le chiavi RSA nell'insieme di credenziali delle chiavi o generare nuove chiavi RSA in Azure Key Vault.

Prerequisiti

Questo articolo richiede che sia già disponibile un set di crittografia del disco in ogni area in cui si vuole replicare l'immagine:

  • Per usare solo una chiave gestita dal cliente, vedere gli articoli sull'abilitazione delle chiavi gestite dal cliente con la crittografia lato server usando il portale di Azure o PowerShell.

  • Per usare chiavi gestite dalla piattaforma e gestite dal cliente (per la doppia crittografia), vedere gli articoli relativi all'abilitazione della doppia crittografia inattivi usando l'portale di Azure o PowerShell.

    Importante

    È necessario usare il collegamento https://aka.ms/diskencryptionupdates per accedere alla portale di Azure. La doppia crittografia inattiva non è attualmente visibile nella portale di Azure pubblica, a meno che non si usi tale collegamento.

Limitazioni

Quando si usano chiavi gestite dal cliente per crittografare le immagini in una Raccolta di calcolo di Azure, si applicano queste limitazioni:

  • I set di chiavi di crittografia devono trovarsi nella stessa sottoscrizione dell'immagine.

  • I set di chiavi di crittografia sono risorse regionali, quindi ogni area richiede un set di chiavi di crittografia diverso.

  • Dopo aver usato le proprie chiavi per crittografare un'immagine, non è possibile tornare all'uso delle chiavi gestite dalla piattaforma per crittografare tali immagini.

  • L'origine della versione dell'immagine della macchina virtuale non supporta attualmente la crittografia della chiave gestita dal cliente.

  • Alcune delle funzionalità come la replica di un'immagine SSE+CMK, la creazione di un'immagine da disco crittografato SSE+CMK e così via. non sono supportati tramite il portale.

PowerShell

Per specificare un set di crittografia del disco per una versione dell'immagine, usare New-AzGalleryImageVersion con il -TargetRegion parametro:


$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

Creare una VM

È possibile creare una macchina virtuale da una raccolta di calcolo di Azure e usare chiavi gestite dal cliente per crittografare i dischi. La sintassi è uguale alla creazione di una macchina virtuale generalizzata o specializzata da un'immagine. Usare il set di parametri estesi e aggiungere Set-AzVMOSDisk -Name $($vmName +"_OSDisk") -DiskEncryptionSetId $diskEncryptionSet.Id -CreateOption FromImage alla configurazione della macchina virtuale.

Per i dischi dati, aggiungere il -DiskEncryptionSetId $setID parametro quando si usa Add-AzVMDataDisk.

CLI

Per specificare un set di crittografia del disco per una versione dell'immagine, usare az image gallery create-image-version con il --target-region-encryption parametro . Il formato per --target-region-encryption è un elenco delimitato da virgole di chiavi per crittografare il sistema operativo e i dischi dati. L'aspetto dovrebbe risultare simile al seguente: <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 l'origine per il disco del sistema operativo è un disco gestito o una macchina virtuale, usare --managed-image per specificare l'origine per la versione dell'immagine. In questo esempio l'origine è un'immagine gestita con un disco del sistema operativo e un disco dati al LUN 0. Il disco del sistema operativo verrà crittografato con DiskEncryptionSet1 e il disco dati verrà crittografato con 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 l'origine per il disco del sistema operativo è uno snapshot, usare --os-snapshot per specificarlo. Aggiungere tutti gli altri snapshot del disco dati che devono essere inclusi anche nella versione dell'immagine. Usare --data-snapshot-luns per specificare il LUN e usare --data-snapshots per specificare gli snapshot.

In questo esempio le origini sono costituite da snapshot del disco. C'è un disco del sistema operativo e un disco dati in LUN 0. Il disco del sistema operativo verrà crittografato con DiskEncryptionSet1 e il disco dati verrà crittografato con 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 
   

Creare la macchina virtuale

È possibile creare una macchina virtuale da una raccolta di calcolo di Azure e usare chiavi gestite dal cliente per crittografare i dischi. La sintassi è uguale alla creazione di una macchina virtuale generalizzata o specializzata con l'aggiunta del --os-disk-encryption-set parametro. Per i dischi dati, aggiungere --data-disk-encryption-sets con un elenco delimitato dallo spazio dei set di crittografia dei dischi per i dischi.

Portale

Quando si crea la versione dell'immagine nel portale, è possibile usare la scheda Crittografia per applicare i set di crittografia di archiviazione.

  1. Nella pagina Crea una versione dell'immagine selezionare la scheda Crittografia .
  2. In Tipo di crittografia selezionare Crittografia inattiva con una chiave gestita dal cliente o Doppia crittografia con chiavi gestite dalla piattaforma e gestite dal cliente.
  3. Per ogni disco nell'immagine selezionare un set di crittografia dall'elenco a discesa Set di crittografia dischi .

Creare la macchina virtuale

È possibile creare una macchina virtuale da una versione dell'immagine e usare chiavi gestite dal cliente per crittografare i dischi. Quando si crea la macchina virtuale nel portale, nella scheda Dischi selezionare Crittografia inattiva con chiavi gestite dal cliente o Doppia crittografia con chiavi gestite dalla piattaforma e chiavi gestite dal cliente per il tipo di crittografia. È quindi possibile selezionare il set di crittografia dall'elenco a discesa.

Passaggi successivi

Vedere altre informazioni sulla crittografia dei dischi sul lato server.

Per informazioni su come fornire informazioni sul piano di acquisto, vedere Fornire informazioni sul piano di acquisto Azure Marketplace durante la creazione di immagini.