Skip to content

Commit a45914e

Browse files
Merge pull request #310311 from AbhishekMallick-MS/Jan-9-2026-CVMbkp
Confidential VM backup Public preview - Doc updates
2 parents 5b69f7d + c795c6d commit a45914e

8 files changed

Lines changed: 273 additions & 18 deletions

articles/backup/backup-support-matrix-iaas.md

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
title: Support matrix for Azure VM backups
33
description: Get a summary of support settings and limitations for backing up Azure VMs by using the Azure Backup service.
44
ms.topic: reference
5-
ms.date: 10/27/2025
5+
ms.date: 01/28/2026
66
ms.custom:
77
- references_regions
88
- linux-related-content
@@ -104,6 +104,10 @@ Azure Backup provides the following support for customers to author their own pr
104104

105105

106106

107+
## Support for Confidential VM backup (preview)
108+
109+
[!INCLUDE [Confidential VM backup support scenarios..](../../includes/confidential-vm-backup-support-matrix.md)]
110+
107111
## Support for agentless multi-disk crash-consistent VM backup
108112

109113
[!INCLUDE [backup-azure-agentless-multi-disk-crash-consistent-vm-backup-support-scenarios.md](../../includes/backup-azure-agentless-multi-disk-crash-consistent-vm-backup-support-scenarios.md)]
@@ -187,8 +191,8 @@ Configure standalone Azure VMs in Windows Storage Spaces direct | Not supported.
187191
[Restore Virtual Machine Scale Sets](/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-orchestration-modes#scale-sets-with-flexible-orchestration) | Supported for the flexible orchestration model to back up and restore a single Azure VM.
188192
Restore with managed identities | Supported for managed Azure VMs. <br><br> Not supported for classic and unmanaged Azure VMs. <br><br> Cross-region restore isn't supported with managed identities. <br><br> Currently, this is available in all Azure public and national cloud regions. <br><br> [Learn more](backup-azure-arm-restore-vms.md#restore-vms-with-managed-identities).
189193
<a name="tvm-backup">Back up trusted launch VMs</a> | Supported via [Enhanced policy](backup-azure-vms-enhanced-policy.md) and [Standard policy](backup-instant-restore-capability.md). <br><br> **Feature details**: <br><br> - Backup of a VM with Data disks having Security Type 'TrustedLaunch' or 'ConfidentialVM' is not supported. This can happen if you attach the OS disk from a Trusted Launch as a Data disk to another VM. <br> - Item-level restore is supported for the [applicable scenarios](#support-for-file-level-restore). <br><br> **Backup support via Enhanced policy**: <br><br> - Azure portal, PowerShell, and REST API clients support trusted launch VM backup with Enhanced policy. <br> - The Azure portal allows you to enable backup through a [Recovery Services vault](backup-azure-arm-vms-prepare.md), the [VM management pane](backup-during-vm-creation.md#run-an-on-demand-backup-after-vm-creation), and the VM creation pane. <br> - Resiliency supports [backup](../resiliency/tutorial-configure-protection-datasource.md), [alerts](../resiliency/tutorial-monitor-alerts-metrics.md), and [monitoring](../resiliency/tutorial-monitor-protection-summary.md) for trusted launch VMs. <br><br> **Backup support via Standard policy**: <br><br> - CLI (version 2.73.0 and later), PowerShell (version Az 14.0.0 and later), and REST API (version 2025-01-01 and later) only support trusted launch VM backup with Standard policy. <br> - Trusted Launch virtual machines with standard policy use managed disk snapshots for Instant Restore. In this scenario, you incur Snapshot storage cost same as that of Enhanced policy. [Learn more](backup-instant-restore-capability.md#cost-impact). <br><br> Note that migration of an existing Gen2 VM (protected by Azure Backup Standard policy) to Trusted Launch VM requires first [switching to Enhanced policy](backup-azure-vm-migrate-enhanced-policy.md).
190-
[Back up confidential VMs](../confidential-computing/confidential-vm-overview.md) | Unsupported. <br><br> Note that the following limited preview support scenarios are discontinued and currently not available: <br><br> - Backup of Confidential VMs with no confidential disk encryption. <br> - Backup of Confidential VMs with confidential OS disk encryption through a platform-managed key (PMK).
191-
Backup of VMs with SSE and CMK encryption using HSM | Supported. <br><br> You must assign the permissions get, wrap, and unwrap key to the Key Vault to User-assigned managed identity.
194+
[Back up confidential VMs](../confidential-computing/confidential-vm-overview.md) | Supported (in preview). [Learn more about the supported scenarios](#support-for-confidential-vm-backup-preview).
195+
192196

193197
## VM storage support
194198

Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
---
2+
title: Azure Backup - Configure backup of Confidential VM using Azure Backup (preview)
3+
description: Learn about backing up Confidential VM with PMK or CMK using Azure Backup.
4+
ms.topic: how-to
5+
ms.date: 01/28/2026
6+
ms.custom: references_regions
7+
ms.service: azure-backup
8+
author: AbhishekMallick-MS
9+
ms.author: v-mallicka
10+
---
11+
12+
# Back up Confidential VM using Azure Backup (preview)
13+
14+
[!INCLUDE [Confidential VM backup preview advisory.](../../includes/confidential-vm-backup-preview.md)]
15+
16+
Azure Backup supports [Confidential Virtual Machines (CVMs)](/azure/confidential-computing/confidential-vm-overview) that provide secure backup and restore for sensitive workloads. This capability uses Azure Disk Encryption Sets (DES) with Platform Managed Keys (PMKs) or Customer Managed Keys (CMKs) to maintain data confidentiality throughout the backup lifecycle. Confidential VMs provide strong security by creating a hardware-enforced boundary between your application and the virtualization stack.
17+
18+
This article describes how to configure and back up Confidential VM (CVM) with Platform or Customer Managed Key (PMK or CMK).
19+
20+
## Supported scenarios for Confidential VM backup
21+
22+
[!INCLUDE [Confidential VM backup support scenarios..](../../includes/confidential-vm-backup-support-matrix.md)]
23+
24+
## Prerequisites
25+
26+
Before you configure backup for CVM with CMK, ensure that the following prerequisites are met:
27+
28+
- Register for the preview feature `RestorePointSupportForConfidentialVMV2` under the `Microsoft.Compute` provider namespace by running the following cmdlet, which is auto‑approved.
29+
30+
```azurepowershell-interactive
31+
Register-AzProviderFeature -FeatureName "RestorePointSupportForConfidentialVMV2" -ProviderNamespace "Microsoft.Compute"
32+
33+
```
34+
35+
36+
- Identify or create a Confidential VM (CVM) in a supported region. See the [supported regions](https://azure.microsoft.com/explore/global-infrastructure/products-by-region/?products=virtual-machines).
37+
- Identify or [create a Recovery Services Vault](backup-create-recovery-services-vault.md#create-a-recovery-services-vault) in the same region as the VM.
38+
39+
## Create a new Confidential VM with PMK or CMK
40+
41+
To back up a Confidential VM using Azure Backup, you must have a Confidential VM configured with PMK or CMK encryption. Azure Backup uses the Disk Encryption Set (DES) associated with your VM to maintain encryption throughout the backup and restore process.
42+
43+
Learn how to [create a new Confidential VM with PMK or CMK](/azure/confidential-computing/quick-create-confidential-vm-portal-amd), if needed.
44+
45+
## Assign permissions for Confidential VM backup
46+
47+
Azure Backup requires access to the Key vault or Managed Hardware Security Module (HSM) that stores your keys. This access ensures the service can back up keys and recover them if they're deleted. When you configure backup in the Azure portal, Azure Backup automatically gets the required permissions. If you use other clients, such as PowerShell, CLI, or REST API, you must assign these permissions manually.
48+
49+
If you're using a Key vault to store keys, [grant permission to the Azure Backup service for the backup operations](backup-azure-vms-encryption.md#provide-permissions).
50+
51+
To assign permissions for MHSM, follow these steps:
52+
53+
1. In the Azure portal, go to **Managed HSM**, and then select **Local RBAC** in **Settings**.
54+
55+
2. Select **Add** to add a *new Role Assignment*.
56+
57+
3. Select one of the following roles:
58+
59+
- **Built-in roles**: If you want to use a built-in role, select the **Managed HSM Crypto User** role.
60+
61+
- **Custom roles**: If you want to use custom role, then *dataActions* of that role should have these values:
62+
63+
- **Microsoft.KeyVault/managedHsm/keys/read/action**
64+
- **Microsoft.KeyVault/managedHsm/keys/backup/action**
65+
66+
You can create a custom role using the [Managed HSM data plane role management](/azure/key-vault/managed-hsm/role-management#create-a-new-role-definition).
67+
68+
4. For **Scope**, select the specific key used to create Confidential VM with Customer Managed Key.
69+
70+
You can also select **All Keys**.
71+
72+
5. On the **Security principal**, select **Backup Management Service**.
73+
74+
## Configure backup for Confidential VM
75+
76+
Once Azure Backup has the necessary permissions, you can continue configuring backup. [Learn how to configure Azure VM backup](backup-azure-vms-enhanced-policy.md).
77+
78+
## Next step
79+
80+
[Restore CVM using Azure Backup (preview)](confidential-vm-restore.md).
81+
82+
## Related content
83+
84+
[Back up encrypted Azure virtual machines](backup-azure-vms-encryption.md).
Lines changed: 138 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,138 @@
1+
---
2+
title: Azure Backup - Restore Confidential VM using Azure Backup (preview)
3+
description: Learn about restoring Confidential VM with Platform Managed Key (PMK) or Customer Managed Key (CMK) using Azure Backup.
4+
ms.topic: how-to
5+
ms.date: 01/28/2026
6+
ms.custom: references_regions
7+
ms.service: azure-backup
8+
author: AbhishekMallick-MS
9+
ms.author: v-mallicka
10+
---
11+
12+
# Restore Confidential VM using Azure Backup (preview)
13+
14+
[!INCLUDE [Confidential VM backup preview advisory.](../../includes/confidential-vm-backup-preview.md)]
15+
16+
This article describes how to restore Confidential VM (CVM) encrypted with Platform Managed Key (PMK) or Customer Managed Key (CMK) using Azure Backup. It covers restore scenarios based on encryption key and Disk Encryption Set (DES) states, and provides the recovery procedure for restore failures. It also provides the procedure to extract virtual machine encryption details, restore missing keys, and assign necessary permissions.
17+
18+
Learn about the [supported scenarios for Confidential VM backup](backup-support-matrix-iaas.md#support-for-confidential-vm-backup-preview).
19+
20+
## Restore scenarios for Confidential VM
21+
22+
Confidential VM restore behavior depends on the state of the DES, Key Vault, and keys at the time of restore. Key restore scenarios include:
23+
24+
- **Original Key or Key Version intact**: Restore succeeds if the original Disk Encryption Set (DES) and key remain intact.
25+
- **Key Rotation**: Restore succeeds when a new key version is active, provided the previous key version isn't expired or deleted.
26+
- **Key Change**: If the DES uses a new key, restore succeeds only if the previous key still exists; it fails if the previous key is deleted.
27+
- **DES or Key Deleted**: Restore fails with errors, such as `UserErrorDiskEncryptionSetDoesNotExist` or `UserErrorDiskEncryptionSetKeyDoesNotExist`. To resolve, re-create the key and DES using restored key data, then retry the restore.
28+
- **Input DES Provided**: If you provide a new DES created from restored key data, restore can succeed if the key and version match the ones used at backup time.
29+
- **Mismatched DES or Key**: Restore fails with `UserErrorInputDESKeyDoesNotMatchWithOriginalKey`. To resolve this error, restore the missing keys.
30+
31+
Learn how to [restore missing keys for Confidential VM restore](#restore-missing-keys-for-confidential-vm-restore).
32+
33+
## Prerequisites
34+
35+
Before you start the Confidential VM restore process, ensure you have the recovery points available in the Recovery Services vault.
36+
37+
## Assign permissions to DES and Confidential Guest VM Agent for restore
38+
39+
Disk Encryption Set and Confidential Guest VM Agent need permissions on the Key Vault or Managed HSM. To provide the permissions, follow these steps:
40+
41+
**For Key vault**: To grant permissions to the Key vault, select the message *To associate a disk, image, or snapshot with this disk encryption set, you must grant permissions to the key vault*.
42+
43+
**For Managed HSM**: To grant permissions to the Managed HSM, follow these steps:
44+
45+
1. Assign newly created DES with the Managed HSM Crypto User Role:
46+
47+
1. In the [Azure portal](https://portal.azure.com/), go to **Managed HSM** > **Settings**, and then select **Local RBAC**.
48+
2. To add a new Role Assignment, select **Add**.
49+
3. Under **Role**, select **Managed HSM Crypto User Role**.
50+
4. Under **Scope**, select the restored key. You can also select **All Keys**.
51+
5. On the **Security principal**, select *newly created DES*.
52+
53+
2. Assign required permissions to the Confidential Guest VM Agent for booting up CVM:
54+
55+
1. In the [Azure portal](https://portal.azure.com/), go to **Managed HSM** > **Settings**, and then select **Local RBAC**.
56+
2. To add a new Role Assignment, select **Add**.
57+
3. Under **Role**, select **Managed HSM Crypto Service Encryption User**.
58+
4. Under **Scope**, select the restored key. You can also select **All Keys**.
59+
5. On the **Security principal**, select **Confidential Guest VM Agent**.
60+
61+
## Restore the Confidential VM
62+
63+
After you assign the required permissions, you can run the restore operation. [Learn how to restore an Azure VM](backup-azure-arm-restore-vms.md).
64+
65+
## Restore missing keys for Confidential VM restore
66+
67+
If the restore operation fails, you need to restore the PMK or CMK that Azure Backup backed up.
68+
69+
To restore the key using PowerShell, follow these steps:
70+
71+
1. To select the vault containing the protected CVM + CMK, enter the resource group and name of the vault in the cmdlet, and then run the cmdlet.
72+
73+
```azurepowershell
74+
$vault = Get-AzRecoveryServicesVault -ResourceGroupName "<vault-rg>" -Name "<vault-name>"
75+
```
76+
77+
2. To list all failed restore jobs from the last 7 days, run the following cmdlet:
78+
79+
```azurepowershell
80+
$Jobs = Get-AzRecoveryServicesBackupJob -From (Get-Date).AddDays(-7).ToUniversalTime() -Status Failed -Operation Restore -VaultId $vault.ID
81+
```
82+
83+
>[!Note]
84+
>If you want to fetch older jobs, update the day range in the cmdlet.
85+
86+
3. To select the failed restore job from the result and get the job details, run the following cmdlet:
87+
88+
*Example*
89+
90+
```azurepowershell
91+
$JobDetails = Get-AzRecoveryServicesBackupJobDetail -Job $Jobs[0] -VaultId $vault.ID
92+
```
93+
94+
4. To get all the necessary parameters required for key restore from the job details, run the following cmdlet:
95+
96+
```azurepowershell
97+
$properties = $JobDetails.properties
98+
$storageAccountName = $properties["Target Storage Account Name"]
99+
$containerName = $properties["Config Blob Container Name"]
100+
$securedEncryptionInfoBlobName = $properties["Secured Encryption Info Blob Name"]
101+
```
102+
103+
5. To select the target storage account used for restore, enter its resource group in the following cmdlet, and then run the cmdlet:
104+
105+
106+
```azurepowershell
107+
Set-AzCurrentStorageAccount -Name $storageaccountname -ResourceGroupName '<storage-account-rg >'
108+
```
109+
110+
6. To restore the JSON configuration file containing key details for CVM with CMK, run the following cmdlet:
111+
112+
```azurepowershell
113+
$destination_path = 'C:\cvmcmkencryption_config.json'
114+
Get-AzStorageBlobContent -Blob $securedEncryptionInfoBlobName -Container $containerName -Destination $destination_path
115+
$encryptionObject = Get-Content -Path $destination_path | ConvertFrom-Json
116+
```
117+
118+
7. After the JSON file is generated in the destination path mentioned previously, generate key blob file from the JSON data by running the following cmdlet:
119+
120+
```azurepowershell
121+
$keyDestination = 'C:\keyDetails.blob'
122+
[io.file]::WriteAllBytes($keyDestination, [System.Convert]::FromBase64String($encryptionObject.OsDiskEncryptionDetails.KeyBackupData))
123+
```
124+
125+
8. To restore the key back in the Key Vault or Managed Hardware Security Module (HSM), run the following cmdlet:
126+
127+
```azurepowershell
128+
Restore-AzKeyVaultKey -VaultName '<target_key_vault_name> ' -InputFile $keyDestination
129+
For MHSM Use,
130+
Restore-AzKeyVaultKey -HsmName '<target_mhsm_name>' -InputFile $keyDestination
131+
```
132+
133+
Now, you can create a new DES with Encryption type as *Confidential disk encryption with CMK*, which should point to the restored key. This DES should have enough permissions to perform a successful restore. If you use a new Key Vault or Managed HSM to restore the key, then *Backup Management Service* has enough permissions on it. [Learn how to grant permission for Key Vault or Managed HSM access](confidential-vm-backup.md#assign-permissions-for-confidential-vm-backup).
134+
135+
## Related content
136+
137+
- [Support matrix for Confidential VM backup](backup-support-matrix-iaas.md#support-for-confidential-vm-backup-preview).
138+
- [Back up CVM using Azure Backup (preview)](confidential-vm-backup.md).

articles/backup/index.yml

Lines changed: 2 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -65,26 +65,14 @@ landingContent:
6565
linkLists:
6666
- linkListType: whats-new
6767
links:
68+
- text: Confidential VM backup (preview)
69+
url: confidential-vm-backup.md
6870
- text: Threat Detection with Microsoft Defender for Cloud integration (preview)
6971
url: threat-detection-overview.md
7072
- text: Azure Files (Premium) vaulted backup
7173
url: azure-file-share-backup-overview.md
72-
- text: Azure Elastic SAN backup (preview)
73-
url: azure-elastic-storage-area-network-backup-overview.md
74-
- text: SAP ASE (Sybase) database backup support
75-
url: sap-ase-database-about.md
7674
- text: Azure Data Lake Storage vaulted backup support
7775
url: azure-data-lake-storage-backup-overview.md
78-
- text: Azure Files vaulted backup support
79-
url: azure-file-share-backup-overview.md?tabs=vault-standard
80-
- text: Azure Database for PostgreSQL - Flexible server backup support
81-
url: backup-azure-database-postgresql-flex-overview.md
82-
- text: Secure by default with Vault soft delete (preview)
83-
url: secure-by-default.md
84-
- text: WORM enabled Immutable Storage for Recovery Services vaults
85-
url: backup-azure-immutable-vault-concept.md
86-
- text: Vaulted backup and Cross Region Restore support for AKS
87-
url: azure-kubernetes-service-backup-overview.md
8876

8977
# Card
9078
- title: Back up Azure VMs

articles/backup/toc.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -408,6 +408,8 @@
408408
href: backup-azure-vms-first-look-arm.md
409409
- name: Set up a vault and enable backup for Azure VMs
410410
href: backup-azure-arm-vms-prepare.md
411+
- name: Back up Confidential VMs
412+
href: confidential-vm-backup.md
411413
- name: Back up encrypted Azure VMs
412414
href: backup-azure-vms-encryption.md
413415
- name: Configure app-consistent backups of Azure VMs running Linux
@@ -424,6 +426,8 @@
424426
href: backup-azure-arm-restore-vms.md
425427
- name: Recover files from Azure VM backups
426428
href: backup-azure-restore-files-from-vm.md
429+
- name: Restore Confidential VMs
430+
href: confidential-vm-restore.md
427431
- name: Restore encrypted VMs
428432
href: restore-azure-encrypted-virtual-machines.md
429433
- name: Restore keys and secret for encrypted VMs

0 commit comments

Comments
 (0)