Skip to content

Commit 4eaf02f

Browse files
edit pass: how-to-setup-cmk
1 parent 4987e1b commit 4eaf02f

File tree

1 file changed

+26
-26
lines changed

1 file changed

+26
-26
lines changed

articles/cosmos-db/how-to-setup-cmk.md

Lines changed: 26 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -12,22 +12,22 @@ ROBOTS: noindex, nofollow
1212
# Configure customer-managed keys for your Azure Cosmos account with Azure Key Vault
1313

1414
> [!NOTE]
15-
> You'll need to request access to use this capability. Contact [[email protected]](mailto:[email protected]).
15+
> At this time, you must request access to use this capability. To do so, please contact [[email protected]](mailto:[email protected]).
1616
1717
Data stored in your Azure Cosmos account is automatically and seamlessly encrypted. Azure Cosmos DB offers two options to manage the keys used to encrypt the data at rest:
1818

19-
- **Service-managed keys**: By default, Microsoft manages the keys used to encrypt the data in your Azure Cosmos account.
19+
- **Service-managed keys**: By default, Microsoft manages the keys that are used to encrypt the data in your Azure Cosmos account.
2020

21-
- **Customer-managed keys (CMK)**: You can choose to add a second layer of encryption with your own keys.
21+
- **Customer-managed keys (CMK)**: You can optionally choose to add a second layer of encryption with your own keys.
2222

23-
You'll need to store your customer-managed keys in the [Azure Key Vault](../key-vault/key-vault-overview.md) and provide a key for each Azure Cosmos account that is enabled with customer-managed keys. This key is used to encrypt all the data stored in that account.
23+
You must store customer-managed keys in the [Azure Key Vault](../key-vault/key-vault-overview.md) and provide a key for each Azure Cosmos account that is enabled with customer-managed keys. This key is used to encrypt all the data stored in that account.
2424

2525
> [!NOTE]
26-
> Customer-managed keys are only available for new Azure Cosmos accounts. You should configure them during account creation.
26+
> Currently, customer-managed keys are available only for new Azure Cosmos accounts. You should configure them during account creation.
2727
2828
## <a id="register-resource-provider"></a> Register the Azure Cosmos DB resource provider for your Azure subscription
2929

30-
1. Sign into the [Azure portal](https://portal.azure.com/), go to your Azure subscription, and select **Resource providers** under the **Settings** tab:
30+
1. Sign in to the [Azure portal](https://portal.azure.com/), go to your Azure subscription, and select **Resource providers** under the **Settings** tab:
3131

3232
!["Resource providers" entry from the left menu](./media/how-to-setup-cmk/portal-rp.png)
3333

@@ -37,44 +37,44 @@ You'll need to store your customer-managed keys in the [Azure Key Vault](../key-
3737

3838
## Configure your Azure Key Vault instance
3939

40-
To use customer-managed keys with Azure Cosmos DB, you'll need to set two properties on the Azure Key Vault instance that you plan to use to host your encryption keys. These properties include **soft-delete** and **do not purge**. These properties aren't enabled by default, but you can enable them by using either PowerShell or Azure CLI.
40+
Using customer-managed keys with Azure Cosmos DB requires you to set two properties on the Azure Key Vault instance that you plan to use to host your encryption keys. These properties include **Soft Delete** and **Do Not Purge**. These properties aren't enabled by default. You can enable them by using either PowerShell or the Azure CLI.
4141

42-
To learn how to enable these properties on an existing Azure Key Vault instance, see the **Enabling soft-delete** and **Enabling purge protection** sections in either of these articles:
42+
To learn how to enable these properties on an existing Azure Key Vault instance, see the "Enabling soft-delete" and "Enabling Purge Protection" sections in one of the following articles:
4343

4444
- [How to use soft-delete with PowerShell](../key-vault/key-vault-soft-delete-powershell.md)
4545
- [How to use soft-delete with Azure CLI](../key-vault/key-vault-soft-delete-cli.md)
4646

4747
## Add an access policy to your Azure Key Vault instance
4848

49-
1. From the Azure portal, go to the Azure Key Vault instance that you plan to use to host your encryption keys. Select **Access policies** from the left menu:
49+
1. From the Azure portal, go to the Azure Key Vault instance that you plan to use to host your encryption keys. Select **Access Policies** from the left menu:
5050

5151
!["Access policies" from the left menu](./media/how-to-setup-cmk/portal-akv-ap.png)
5252

53-
1. Select **+ Add access policy**.
53+
1. Select **+ Add Access Policy**.
5454

55-
1. Under the **Key permissions** dropdown menu, select **Get**, **Unwrap Key**, and **Wrap Key** permissions:
55+
1. Under the **Key permissions** drop-down menu, select **Get**, **Unwrap Key**, and **Wrap Key** permissions:
5656

5757
![Selecting the right permissions](./media/how-to-setup-cmk/portal-akv-add-ap-perm2.png)
5858

59-
1. Under **Select principal**, select **None selected**. Then, search for **Azure Cosmos DB** principal and select it. Finally, select **Select** at the bottom. If the **Azure Cosmos DB** principal isn't in the list, you may need to reregister the **Microsoft.DocumentDB** resource provider, described in the [register the resource provider](#register-resource-provider) section of this article.
59+
1. Under **Select principal**, select **None selected**. Then, search for **Azure Cosmos DB** principal and select it. Finally, choose **Select** at the bottom. If the **Azure Cosmos DB** principal isn't in the list, you might need to re-register the **Microsoft.DocumentDB** resource provider as described in the [Register the resource provider](#register-resource-provider) section of this article.
6060

6161
![Select the Azure Cosmos DB principal](./media/how-to-setup-cmk/portal-akv-add-ap.png)
6262

6363
1. Select **Add** to add the new access policy.
6464

6565
## Generate a key in Azure Key Vault
6666

67-
1. From the Azure portal, go the Azure Key Vault instance that you plan to use to host your encryption keys, and select **Keys** from the left menu:
67+
1. From the Azure portal, go the Azure Key Vault instance that you plan to use to host your encryption keys. Then, select **Keys** from the left menu:
6868

6969
!["Keys" entry from the left menu](./media/how-to-setup-cmk/portal-akv-keys.png)
7070

71-
1. Select **Generate/Import**, provide a name for the new key, select an RSA key size (a minimum of 3072 is recommended for best security), and then select **Create**:
71+
1. Select **Generate/Import**, provide a name for the new key, and select an RSA key size. A minimum of 3072 is recommended for best security. Then select **Create**:
7272

7373
![Create a new key](./media/how-to-setup-cmk/portal-akv-gen.png)
7474

75-
1. After the key is created, select the newly created key, and select its current version.
75+
1. After the key is created, select the newly created key, then its current version.
7676

77-
1. Copy the keys **Key Identifier**, except the part after the last forward slash:
77+
1. Copy the key's **Key Identifier**, except the part after the last forward slash:
7878

7979
![Copying the key's key identifier](./media/how-to-setup-cmk/portal-akv-keyid.png)
8080

@@ -95,7 +95,7 @@ When you create a new Azure Cosmos DB account with PowerShell:
9595
- Use **2019-12-12** as the API version.
9696

9797
> [!IMPORTANT]
98-
> You'll need to set the `Location` parameter explicitly for the account to be successfully created with customer-managed keys.
98+
> You must set the `Location` parameter explicitly for the account to be successfully created with customer-managed keys.
9999
100100
```powershell
101101
$resourceGroupName = "myResourceGroup"
@@ -119,14 +119,14 @@ New-AzResource -ResourceType "Microsoft.DocumentDb/databaseAccounts" `
119119

120120
### Using an Azure Resource Manager template
121121

122-
When you create a new Azure Cosmos account through an Azure Resource Manager template:
122+
When creating a new Azure Cosmos account through an Azure Resource Manager template:
123123

124124
- Pass the URI of the Azure Key Vault key that you copied earlier under the **keyVaultKeyUri** property in the **properties** object.
125125

126126
- Use **2019-12-12** as the API version.
127127

128128
> [!IMPORTANT]
129-
> You'll need to set the `Location` parameter explicitly for the account to be successfully created with customer-managed keys.
129+
> You must set the `Location` parameter explicitly for the account to be successfully created with customer-managed keys.
130130
131131
```json
132132
{
@@ -168,7 +168,7 @@ When you create a new Azure Cosmos account through an Azure Resource Manager tem
168168

169169
```
170170

171-
Deploy the template with this PowerShell script:
171+
Deploy the template with the following PowerShell script:
172172

173173
```powershell
174174
$resourceGroupName = "myResourceGroup"
@@ -186,7 +186,7 @@ New-AzResourceGroupDeployment `
186186

187187
## Frequently asked questions
188188

189-
### Is there any additional charge when using customer-managed keys?
189+
### Is there any additional charge for using customer-managed keys?
190190

191191
Yes. To account for the additional compute load that is required to manage data encryption and decryption with customer-managed keys, all operations executed against the Azure Cosmos account consume a 25 percent increase in [Request Units](./request-units.md).
192192

@@ -200,19 +200,19 @@ All the data stored in your Azure Cosmos account is encrypted with the customer-
200200

201201
- The property paths declared in your [indexing policies](./index-policy.md)
202202

203-
- The values of your container's [partition key](./partitioning-overview.md)
203+
- The values of your containers' [partition keys](./partitioning-overview.md)
204204

205205
### Are customer-managed keys supported for existing Azure Cosmos accounts?
206206

207-
This feature is currently available for new accounts only.
207+
This feature is currently available only for new accounts.
208208

209209
### Is there a plan to support finer granularity than account-level keys?
210210

211211
Not currently, but container-level keys are being considered.
212212

213213
### How do customer-managed keys affect a backup?
214214

215-
Azure Cosmos DB takes [regular and automatic backups](./online-backup-and-restore.md) of the data stored in your account. This operation backs up the encrypted data. To use the restored backup, the encryption key that you used at the time of the backup is required. This means that no revocation will have been made and the version of the key that was used at the time of the backup will still be enabled.
215+
Azure Cosmos DB takes [regular and automatic backups](./online-backup-and-restore.md) of the data stored in your account. This operation backs up the encrypted data. To use the restored backup, the encryption key that you used at the time of the backup is required. This means that no revocation was made and the version of the key that was used at the time of the backup will still be enabled.
216216

217217
### How do I revoke an encryption key?
218218

@@ -230,5 +230,5 @@ The only operation possible when the encryption key has been revoked is account
230230

231231
## Next steps
232232

233-
- Learn more about [data encryption in Azure Cosmos DB](./database-encryption-at-rest.md)
234-
- Get an overview of [secure access to data in Cosmos DB](secure-access-to-data.md)
233+
- Learn more about [data encryption in Azure Cosmos DB](./database-encryption-at-rest.md).
234+
- Get an overview of [secure access to data in Cosmos DB](secure-access-to-data.md).

0 commit comments

Comments
 (0)