You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/key-vault/includes/managed-hsm/billing-warning.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,4 +9,4 @@ ms.date: 03/13/2026
9
9
---
10
10
11
11
> [!WARNING]
12
-
> Managed HSM instances are considered always-in-use. If you choose to enable purge protection using the `--enable-purge-protection` flag, you are billed for the entirety of the retention period.
12
+
> Managed HSM instances are always in use. If you enable purge protection by using the `--enable-purge-protection` flag, you pay for the entire retention period.
Copy file name to clipboardExpand all lines: articles/key-vault/managed-hsm/backup-restore.md
+31-31Lines changed: 31 additions & 31 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -18,56 +18,56 @@ ms.author: mbaldwin
18
18
> [!NOTE]
19
19
> This feature is only available for the resource type managed HSM.
20
20
21
-
Managed HSM supports creating a full backup of the entire contents of the HSM including all keys, versions, attributes, tags, and role assignments. The backup is encrypted with cryptographic keys associated with the HSM's security domain.
21
+
Managed HSM supports creating a full backup of the entire contents of the HSM, including all keys, versions, attributes, tags, and role assignments. The backup process encrypts the data by using cryptographic keys associated with the HSM's security domain.
22
22
23
23
Backup is a data plane operation. The caller initiating the backup operation must have permission to perform dataAction **Microsoft.KeyVault/managedHsm/backup/start/action**.
24
24
25
-
Only following built-in roles have permission to perform full backup:
25
+
Only the following built-in roles have permission to perform a full backup:
26
26
- Managed HSM Administrator
27
27
- Managed HSM Backup
28
28
29
-
There are two ways to execute a full backup/restore:
30
-
1.Assigning a User-Assigned Managed Identity (UAMI) to the Managed HSM service. You can back up and restore your MHSM using a userassigned managed identity regardless of whether your storage account has public network access or private network access enabled. If storage account is behind a private endpoint, the UAMI method works with trusted service bypass to allow for backup and restore.
31
-
2. Using storage container SAS token with permissions `crdw`. Backing up and restoring using storage container SAS token requires your storage account to have public network access enabled.
29
+
You can execute a full backup and restore operation in two ways:
30
+
1.Assign a user-assigned managed identity (UAMI) to the Managed HSM service. You can back up and restore your MHSM by using a user-assigned managed identity regardless of whether your storage account has public network access or private network access enabled. If the storage account is behind a private endpoint, the UAMI method works with trusted service bypass to allow for backup and restore.
31
+
1. Use a storage container SAS token with permissions `crdw`. Backing up and restoring by using a storage container SAS token requires your storage account to have public network access enabled.
32
32
33
-
You must provide the following information to execute a full backup:
33
+
To execute a full backup, provide the following information:
34
34
- HSM name or URL
35
35
- Storage account name
36
36
- Storage account blob storage container
37
-
- Userassigned managed identity OR storage container SAS token with permissions `crdw`
37
+
- User-assigned managed identity **OR** storage container SAS token with permissions `crdw`
#### Prerequisites if backing up and restoring using userassigned managed identity:
41
+
#### Prerequisites for backing up and restoring by using user-assigned managed identity
42
42
43
-
1. Ensure you have the Azure CLI version 2.56.0 or later. Run `az --version` to find the version. If you need to install or upgrade, see [Install the Azure CLI](/cli/azure/install-azure-cli).
44
-
2. Create a userassigned managed identity.
45
-
3. Create a storage account (or use an existing storage account). The storage account cannot have an immutability policy applied to it.
46
-
4. If public network access is disabled on your storage account, enable trusted service bypass on the storage account in the "Networking" tab, under "Exceptions."
47
-
5. Provide 'storage blob data contributor' role access to the userassigned managed identity created in step 2, by going to the "Access Control" tab on the portal and selecting "Add Role Assignment". Then select "managed identity" and select the managed identity created in step 2 -> Review + Assign
48
-
6. Create the Managed HSM and associate the managed identity:
43
+
1. Ensure you have Azure CLI version 2.56.0 or later. Run `az --version` to find the version. If you need to install or upgrade, see [Install the Azure CLI](/cli/azure/install-azure-cli).
44
+
1. Create a user-assigned managed identity.
45
+
1. Create a storage account (or use an existing storage account). The storage account can't have an immutability policy applied to it.
46
+
1. If public network access is disabled on your storage account, enable trusted service bypass on the storage account in the **Networking** tab, under **Exceptions**.
47
+
1. Provide **Storage Blob Data Contributor** role access to the user-assigned managed identity created in step 2, by going to the **Access Control** tab on the portal and selecting **Add Role Assignment**. Then select **managed identity** and select the managed identity created in step 2 -> **Review + Assign**
48
+
1. Create the Managed HSM and associate the managed identity:
If you have an existing Managed HSM, associate the managed identity by updating the MHSM with the below command.
52
+
If you have an existing Managed HSM, associate the managed identity by updating the MHSM with the following command.
53
53
```azurecli-interactive
54
54
az keyvault update-hsm --hsm-name ContosoMHSM --mi-user-assigned "/subscriptions/subid/resourcegroups/mhsmrgname/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userassignedidentitynamefromstep2"
55
55
```
56
56
57
57
## Full backup
58
58
59
-
Backup is a long running operation but immediately returns a Job ID. You can check the status of backup process using this Job ID. The backup process creates a folder inside the designated container with a following naming pattern **`mhsm-{HSM_NAME}-{YYYY}{MM}{DD}{HH}{mm}{SS}`**, where HSM_NAME is the name of managed HSM being backed up and YYYY, MM, DD, HH, MM, mm, SS are the year, month, date, hour, minutes, and seconds of date/time in UTC when the backup command was received.
59
+
Backup is a long running operation but it immediately returns a job ID. You can check the status of the backup process by using this job ID. The backup process creates a folder inside the designated container with the following naming pattern:**`mhsm-{HSM_NAME}-{YYYY}{MM}{DD}{HH}{mm}{SS}`**. In this pattern, `HSM_NAME` is the name of the managed HSM being backed up, and `YYYY`, `MM`, `DD`, `HH`, `mm`, and `SS` are the year, month, date, hour, minutes, and seconds of the date and time in UTC when the backup command was received.
60
60
61
61
While the backup is in progress, the HSM might not operate at full throughput as some HSM partitions are busy performing the backup operation.
62
62
63
63
> [!NOTE]
64
-
> Backups to storage accounts with an immutability policy applied is not supported.
64
+
> Backups to storage accounts with an immutability policy applied aren't supported.
65
65
66
-
### Backup HSM using user assigned managed identity
66
+
### Backup HSM by using user assigned managed identity
Full restore allows you to completely restore the contents of the HSM with a previous backup, including all keys, versions, attributes, tags, and role assignments. Everything currently stored in the HSM is wiped out, and it returns to the same state it was in when the source backup was created.
97
+
Full restore restores the contents of the HSM from a previous backup, including all keys, versions, attributes, tags, and role assignments. The process removes everything currently stored in the HSM and returns it to the same state it was in when the source backup was created.
98
98
99
99
> [!IMPORTANT]
100
-
> Full restore is a destructive and disruptive operation. Therefore it is mandatory to complete a full backup of the HSM you are restoring to at least 30 minutes before a `restore` operation can be performed.
100
+
> Full restore is a destructive and disruptive operation. Therefore, you must complete a full backup of the HSM you're restoring at least 30 minutes before a `restore` operation.
101
101
102
-
Restore is a data plane operation. The caller starting the restore operation must have permission to perform dataAction **Microsoft.KeyVault/managedHsm/restore/start/action**. The source HSM where the backup was created and the destination HSM where the restore will be performed**must** have the same Security Domain. See more [about Managed HSM Security Domain](security-domain.md).
102
+
Restore is a data plane operation. The caller starting the restore operation must have permission to perform dataAction **Microsoft.KeyVault/managedHsm/restore/start/action**. The source HSM where you created the backup and the destination HSM where you perform the restore**must** have the same Security Domain. See more [about Managed HSM Security Domain](security-domain.md).
103
103
104
-
There are two ways to execute a full restore. You must provide the following information to execute a full restore:
104
+
You can execute a full restore in two ways. To execute a full restore, provide the following information:
105
105
- HSM name or URL
106
106
- Storage account name
107
107
- Storage account blob container
108
108
- User assigned managed identity OR storage container SAS token with permissions `rl`
109
109
- Storage container folder name where the source backup is stored
110
110
111
-
Restore is a long running operation but will immediately return a Job ID. You can check the status of the restore process using this Job ID. When the restore process is in progress, the HSM enters a restore mode and all data plane command (except check restore status) are disabled.
111
+
Restore is a long running operation but it immediately returns a Job ID. You can check the status of the restore process by using this Job ID. When the restore process is in progress, the HSM enters a restore mode and all data plane commands (except check restore status) are disabled.
112
112
113
-
### Restore HSM using user assigned managed identity
113
+
### Restore HSM by using user assigned managed identity
Selective key restore allows you to restore one individual key with all its key versions from a previous backup to an HSM. The key must be purged in order for selective key restore to work. If you are attempting to recover a soft-deleted key, use key recover. Learn more about [key recover](key-management.md).
139
+
Selective key restore restores one key with all its key versions from a previous backup to an HSM. The key must be purged for selective key restore to work. If you're attempting to recover a soft-deleted key, use key recover. Learn more about [key recover](key-management.md).
140
140
141
-
### Selective key restore using user assigned managed identity
141
+
### Selective key restore by using user assigned managed identity
Copy file name to clipboardExpand all lines: articles/key-vault/managed-hsm/hsm-protected-keys-byok.md
+13-13Lines changed: 13 additions & 13 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -13,14 +13,14 @@ ms.author: mbaldwin
13
13
14
14
# Import HSM-protected keys to Managed HSM (BYOK)
15
15
16
-
Azure Key Vault Managed HSM supports importing keys generated in your on-premises hardware security module (HSM); the keys will never leave the HSM protection boundary. This scenario often is referred to as *bring your own key (BYOK)*. Managed HSM uses the Marvell LiquidSecurity HSM adapters (FIPS 140-3 Level 3 validated) to protect your keys.
16
+
Azure Key Vault Managed HSM supports importing keys generated in your on-premises hardware security module (HSM). The keys never leave the HSM protection boundary. This scenario is often referred to as *bring your own key (BYOK)*. Managed HSM uses the Marvell LiquidSecurity HSM adapters (FIPS 140-3 Level 3 validated) to protect your keys.
17
17
18
18
Use the information in this article to help you plan for, generate, and transfer your own HSM-protected keys to use with Managed HSM.
19
19
20
20
> [!NOTE]
21
21
> This import method is available only for [supported HSMs](#supported-hsms).
22
22
23
-
For more information, and for a tutorial to get started using Managed HSM, see [What is Managed HSM?](overview.md).
23
+
For more information, and for a tutorial to get started using Managed HSM, see [What is Managed HSM?](overview.md)
24
24
25
25
## Overview
26
26
@@ -33,7 +33,7 @@ Here's an overview of the process. Specific steps to complete are described late
33
33
* The target key is encrypted with a KEK, which stays encrypted until it's transferred to the Managed HSM. Only the encrypted version of your key leaves the on-premises HSM.
34
34
* A KEK that's generated inside a Managed HSM isn't exportable. HSMs enforce the rule that no clear version of a KEK exists outside a Managed HSM.
35
35
* The KEK must be in the same managed HSM where the target key will be imported.
36
-
* When the BYOK file is uploaded to Managed HSM, a Managed HSM uses the KEK private key to decrypt the target key material and import it as an HSM key. This operation happens entirely inside the HSM. The target key always remains in the HSM protection boundary.
36
+
* When you upload the BYOK file to Managed HSM, a Managed HSM uses the KEK private key to decrypt the target key material and import it as an HSM key. This operation happens entirely inside the HSM. The target key always remains in the HSM protection boundary.
37
37
38
38
39
39
## Prerequisites
@@ -42,18 +42,18 @@ Here's an overview of the process. Specific steps to complete are described late
42
42
43
43
You also need:
44
44
45
-
*The Azure CLI version 2.12.0 or later. Run `az --version` to find the version. If you need to install or upgrade, see [Install the Azure CLI](/cli/azure/install-azure-cli).
45
+
* Azure CLI version 2.12.0 or later. Run `az --version` to find the version. If you need to install or upgrade, see [Install the Azure CLI](/cli/azure/install-azure-cli).
46
46
* A managed HSM in the [supported HSMs list](#supported-hsms) in your subscription. To provision and activate a managed HSM, see [Quickstart: Provision and activate a managed HSM using Azure CLI](quick-create-cli.md).
For more information on login options via the CLI, take a look at [sign in with Azure CLI](/cli/azure/authenticate-azure-cli)
56
+
For more information on authentication options through the CLI, see [sign in with Azure CLI](/cli/azure/authenticate-azure-cli).
57
57
58
58
## Supported HSMs
59
59
@@ -87,15 +87,15 @@ For more information on login options via the CLI, take a look at [sign in with
87
87
88
88
### Step 1: Generate a KEK
89
89
90
-
A KEK is an RSA key that's generated in a Managed HSM. The KEK is used to encrypt the key you want to import (the *target* key).
90
+
A KEK is an RSA key that you generate in a Managed HSM. Use the KEK to encrypt the key you want to import (the *target* key).
91
91
92
92
The KEK must be:
93
-
- An RSA-HSM key (2,048-bit; 3,072-bit; or 4,096-bit)
94
-
- Generated in the same managed HSM where you intend to import the target key
93
+
- An RSA-HSM key (2,048-bit, 3,072-bit, or 4,096-bit)
94
+
- Generated in the same Managed HSM where you intend to import the target key
95
95
- Created with allowed key operations set to `import`
96
96
97
97
> [!NOTE]
98
-
> The KEK must have 'import' as the only allowed key operation. 'import' is mutually exclusive with all other key operations.
98
+
> The KEK must have `import` as the only allowed key operation. `import` is mutually exclusive with all other key operations.
99
99
100
100
Use the [az keyvault key create](/cli/azure/keyvault/key#az-keyvault-key-create) command to create a KEK that has key operations set to `import`. Record the key identifier (`kid`) that's returned from the following command. (You'll use the `kid` value in [Step 3](#step-3-generate-and-prepare-your-key-for-transfer).)
Transfer the KEKforBYOK.publickey.pem file to your offline computer. You'll need this file in the next step.
117
+
Transfer the `KEKforBYOK.publickey.pem` file to your offline computer. You need this file in the next step.
118
118
119
119
### Step 3: Generate and prepare your key for transfer
120
120
121
-
Refer to your HSM vendor's documentation to download and install the BYOK tool. Follow instructions from your HSM vendor to generate a target key, and then create a key transfer package (a BYOK file). The BYOK tool will use the `kid` from [Step 1](#step-1-generate-a-kek) and the KEKforBYOK.publickey.pem file you downloaded in [Step 2](#step-2-download-the-kek-public-key) to generate an encrypted target key in a BYOK file.
121
+
To download and install the BYOK tool, see your HSM vendor's documentation. Follow the instructions from your HSM vendor to generate a target key, and then create a key transfer package (a BYOK file). The BYOK tool uses the `kid` from [Step 1](#step-1-generate-a-kek) and the `KEKforBYOK.publickey.pem` file you downloaded in [Step 2](#step-2-download-the-kek-public-key) to generate an encrypted target key in a BYOK file.
122
122
123
123
Transfer the BYOK file to your connected computer.
124
124
125
125
> [!NOTE]
126
-
> Importing RSA 1,024-bit keys is not supported. Importing EC-HSM P256K keys is supported.
0 commit comments