使用客戶管理的金鑰建立加密映像版本
適用於: ✔️ Linux VM ✔️ Windows VM ✔️ 彈性擴展集 ✔️ 統一擴展集
Azure Compute Gallery (先前稱為共用映像庫) 中的映像會儲存為快照集。 這些映像會自動透過伺服器端 256 位加密方式 AES 加密進行加密。 伺服器端加密也符合 FIPS 140-2 規範。 如需有關基礎 Azure 管理磁碟的加密模組詳細資訊,請參閱加密 API:次世代。
您可以依賴由平台管理的金鑰來加密您的映像,也可以使用您自己的金鑰。 您也可以同時使用這兩項功能進行雙重加密。 如果您選擇使用自己的金鑰來管理加密,您可以指定客戶管理的金鑰,以用於加密和解密映像中的所有磁碟。
透過「客戶管理的金鑰」的伺服器端加密,會使用 Azure Key Vault。 您可以將您的 RSA 金鑰匯入您自己的金鑰保存庫,或在 Azure Key Vault 中產生新的 RSA 金鑰。
必要條件
本文要求您已經在想要複寫映像的每個區域中設定磁碟加密:
若只要使用客戶自控金鑰,請參閱使用 Azure 入口網站或 PowerShell,透過伺服器端加密來啟用客戶自控金鑰的文章。
若要同時使用平台代控金鑰和客戶自控金鑰 (雙重加密),請參閱使用 Azure 入口網站或 PowerShell 啟用待用雙重加密的文章。
重要
您必須使用 https://aka.ms/diskencryptionupdates 連結來存取 Azure 入口網站。 除非您使用該連結,否則公用 Azure 入口網站目前不會顯示待用雙重加密。
限制
當您使用客戶自控金鑰來加密 Azure Compute Gallery 中的映像時,須遵循下列限制:
加密金鑰集必須與您的映像位於相同的訂用帳戶中。
加密金鑰集是區域性資源,因此每個區域都需要不同的加密金鑰集。
當您使用自己的金鑰來加密映像後,就無法回去使用「平台代控金鑰」來加密這些映像。
使用 CMK 加密的 ACG 映像版本來源無法作為來源來建立另一個 ACG 映像版本。
在使用入口網站時,不支援某些功能,例如複寫 SSE+CMK 映像、從 SSE+CMK 加密磁碟建立映像等。
建立映像
若要指定映像版本的磁碟加密集,請使用 New-AzGalleryImageVersion 搭配 -TargetRegion
參數:
$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)
建立映像
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
建立 VM
您可以從 Azure Compute Gallery 建立虛擬機器 (VM),並使用客戶管理的金鑰來加密磁碟。 語法與透過映像建立一般化或特製化 VM 相同。 使用擴充參數集,並將 Set-AzVMOSDisk -Name $($vmName +"_OSDisk") -DiskEncryptionSetId $diskEncryptionSet.Id -CreateOption FromImage
新增至 VM 組態。
至於資料磁碟,當您使用 Add-AzVMDataDisk 時須加入 -DiskEncryptionSetId $setID
參數。
下一步
深入瞭解伺服器端磁碟加密。
如需如何提供購買方案資訊的相關資訊,請參閱在建立映像時提供 Azure Marketplace 購買方案資訊。