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
Data stored in your Azure Cosmos DB for PostgreSQL cluster is automatically and seamlessly encrypted with keys managed by Microsoft. These keys are referred to as **service-managed keys**. Azure Cosmos DB for PostgreSQL uses [Azure Storage encryption](../../storage/common/storage-service-encryption.md) to encrypt data at-rest by default using service-managed keys. You can optionally choose to add an extra layer of security by enabling encryption with **customer-managed keys**.
16
16
17
17
18
18
19
-
## Service-managed Keys
19
+
## Service-managed keys
20
20
21
21
The Azure Cosmos DB for PostgreSQL service uses the FIPS 140-2 validated cryptographic module for storage encryption of data at-rest. All Data including backups and temporary files created while running queries are encrypted on disk. The service uses the AES 256-bit cipher included in Azure storage encryption, and the keys are system-managed. Storage encryption is always on and cannot be disabled.
22
22
23
-
## Customer-managed Keys
23
+
## Customer-managed keys
24
24
25
25
Many organizations require full control of access to data using a customer-managed key. Data encryption with customer-managed keys for Azure Cosmos DB for PostgreSQL enables you to bring your own key for protecting data at rest. It also allows organizations to implement separation of duties in the management of keys and data. With customer-managed encryption, you're responsible for, and in full control of, a key's lifecycle, usage permissions, and auditing of operations.
26
26
@@ -49,7 +49,7 @@ For a cluster to use customer-managed keys stored in Key Vault for encryption of
49
49
The key vault administrator can also enable logging of Key Vault audit events, so they can be audited later.
50
50
When the Azure Cosmos DB for PostgreSQL cluster is configured to use the customer-managed key stored in the key vault, the cluster sends the DEK to the key vault for encryptions. Key Vault returns the encrypted DEK, which is stored in the user database. Similarly, when needed, the server sends the protected DEK to the key vault for decryption. Auditors can use [Azure Monitor](../../azure-monitor/index.yml) to review Key Vault audit event logs, if logging is enabled.
51
51
52
-

52
+

53
53
54
54
## Benefits
55
55
@@ -61,7 +61,7 @@ Data encryption with customer-managed keys for Azure Cosmos DB for PostgreSQL pr
61
61
- Ability to implement separation of duties between security officers, database administrators, and system administrators.
62
62
- Enabling encryption doesn't have any extra performance effect with or without customer-managed keys. Azure Cosmos DB for PostgreSQL relies on Azure Storage for data encryption in both customer-managed and service-managed key scenarios.
63
63
64
-
## Next-steps
64
+
## Next Steps
65
65
66
66
>[!div class="nextstepaction"]
67
67
>[Enable encryption with customer managed keys](how-to-customer-managed-keys.md)
Copy file name to clipboardExpand all lines: articles/cosmos-db/postgresql/how-to-customer-managed-keys.md
+14-16Lines changed: 14 additions & 16 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,5 @@
1
1
---
2
-
title: How to enable encryption with customer managed keys
2
+
title: How to enable encryption with customer managed keys in Azure Cosmos DB for PostgreSQL.
3
3
description: How to enable data encryption with customer managed keys.
4
4
ms.author: akashrao
5
5
author: akashraokm
@@ -34,11 +34,11 @@ ms.date: 04/06/2023
34
34
35
35
## Detailed steps
36
36
37
-
### 1. User Assigned Managed Identity:
37
+
1.### User Assigned Managed Identity
38
38
39
39
1. Search for Managed Identities in the global search bar.
40
40
41
-

41
+

42
42
43
43
44
44
1. Create a new User assigned managed Identity in the same region as your Azure Cosmos DB for PostgreSQL cluster.
@@ -48,7 +48,7 @@ ms.date: 04/06/2023
48
48
49
49
Learn more about [User Assigned Managed Identity.](../../active-directory/managed-identities-azure-resources/how-manage-user-assigned-managed-identities.md?pivots=identity-mi-methods-azp#create-a-user-assigned-managed-identity).
50
50
51
-
### 2. Key Vault:
51
+
1.### Key Vault
52
52
53
53
Using customer-managed keys with Azure Cosmos DB for PostgreSQL requires you to set two properties on the Azure Key Vault instance that you plan to use to host your encryption keys: Soft Delete and Purge Protection.
54
54
@@ -58,15 +58,15 @@ ms.date: 04/06/2023
58
58
59
59
1. If you're using an existing Azure Key Vault instance, you can verify that these properties are enabled by looking at the Properties section on the Azure portal. If any of these properties aren’t enabled, see the "Enabling soft delete" and "Enabling Purge Protection" sections in one of the following articles.
60
60
61
-
* How to use [soft-delete with PowerShell.](../../key-vault/general/key-vault-recovery.md)
61
+
* How to use [soft-delete with PowerShell.](../../key-vault/general/key-vault-recovery.md)
62
62
* How to use [soft-delete with Azure CLI.](../../key-vault/general/key-vault-recovery.md)
63
63
64
64
1. The key Vault must be set with 90 days for 'Days to retain deleted vaults'. If the existing key Vault has been configured with a lower number, you'll need to create a new key vault as it can't be modified after creation.
65
65
66
66
> [!IMPORTANT]
67
67
> Your Azure Key Vault instance must be allow public access from all the networks.
68
68
69
-
### 3. Add an Access Policy to the Key Vault:
69
+
1.### Add an Access Policy to the Key Vault
70
70
71
71
1. From the Azure portal, go to the Azure Key Vault instance that you plan to use to host your encryption keys. Select Access configuration from the left menu and then select Go to access policies.
72
72
@@ -82,7 +82,7 @@ ms.date: 04/06/2023
82
82
83
83
1. Navigate to Review + create select Create.
84
84
85
-
### 4. Create / Import Key:
85
+
1.### Create / Import Key
86
86
87
87
1. From the Azure portal, go to the Azure Key Vault instance that you plan to use to host your encryption keys.
88
88
@@ -100,12 +100,12 @@ ms.date: 04/06/2023
100
100
101
101
1. If you're manually rotating the key, the old key version shouldn't be deleted for at least 24 hours.
102
102
103
-
###5. Enable CMK encryption during the provisioning for a new cluster
103
+
1.### Enable CMK encryption during the provisioning for a new cluster
104
104
105
105
# [Portal](#tab/portal)
106
106
107
107
1. During the provisioning of a new Cosmos DB for PostgreSQL cluster, after providing the necessary information under Basics and Networking Tab, Navigate to the Encryption (Preview) Tab.
108
-

108
+

109
109
110
110
1. Select Customer Managed Key under Data encryption key option.
111
111
@@ -235,21 +235,19 @@ ms.date: 04/06/2023
235
235
```
236
236
---
237
237
238
-
### High Availability:
238
+
### High availability
239
239
240
240
When CMK encryption is enabled on the primary cluster, all standby HA replicas are automatically encrypted by the primary cluster’s CMK
241
241
242
242
### Restrictions
243
243
244
-
1. CMK encryption can't be enabled on cross region read replicas.
244
+
* CMK encryption can't be enabled on cross region read replicas.
245
245
246
-
1. CMK encryption can only be enabled during the creation of a new Azure Cosmos DB for PostgreSQL cluster.
246
+
* CMK encryption can only be enabled during the creation of a new Azure Cosmos DB for PostgreSQL cluster.
247
247
248
-
1. CMK encryption is available in the following regions Switzerland North and North Europe.
248
+
* CMK encryption isn't supported with Private access (including VNET).
249
249
250
-
1. CMK encryption isn't supported with Private access (including VNET).
251
-
252
-
### Changing Encryption Configuration by performing a PITR.
250
+
### Changing encryption configuration by performing a PITR
253
251
254
252
Encryption configuration can be changed from service managed encryption to CMK encryption or vice versa while performing a Point in restore operation to a new cluster.
0 commit comments