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/synapse-analytics/security/workspaces-encryption.md
+11-13Lines changed: 11 additions & 13 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -50,15 +50,13 @@ Workspaces can be configured to enable double encryption with a customer-managed
50
50
51
51
:::image type="content" source="media/workspaces-encryption/workspaces-encryption.png" alt-text="This diagram shows the option that must be selected to enable a workspace for double encryption with a customer-managed key." lightbox="media/workspaces-encryption/workspaces-encryption.png":::
52
52
53
-
---
54
-
55
53
## Prerequisites: Key Rotation and SQL Pool Status
56
54
57
55
> [!WARNING]
58
56
> **Before changing the encryption key of your workspace:**
59
57
>
60
58
> -**Ensure all dedicated SQL pools are in the Online state.** Offline pools will not be re-encrypted and cannot resume if the old key or key version is deleted, disabled, or expired.
61
-
> -**Retain all old keys and key versions** used for encryption until every SQL pool has been brought online and re-encrypted with the new key. Only disable or delete the old key after all pools have successfully rotated to the new key.
59
+
> -**Retain all old keys and key versions** used for encryption until every SQL pool is brought online and re-encrypted with the new key. Only disable or delete the old key after all pools have successfully rotated to the new key.
62
60
>
63
61
> ⚠️ *Failure to follow these prerequisites may result in SQL pools being permanently inaccessible, or backup data becoming unrecoverable.*
64
62
@@ -72,8 +70,6 @@ Workspaces can be configured to enable double encryption with a customer-managed
72
70
| 4 | Verify all pools are re-encrypted | ☐ |
73
71
| 5 | Safely disable old key or key version (after all pools done) | ☐ |
74
72
75
-
---
76
-
77
73
## Key management best practices
78
74
79
75
> [!IMPORTANT]
@@ -86,37 +82,38 @@ Workspaces can be configured to enable double encryption with a customer-managed
86
82
>
87
83
> **To ensure a smooth CMK rotation,** if some SQL pools are offline during the process, the old key or key version should remain enabled and have its expiration date set in the future. This is crucial until the offline pools are successfully resumed and re-encrypted with the new key or key version.
88
84
>
89
-
> **Do not delete old keys or key versions** until all pools and backups have been successfully re-encrypted and validated. Only *disable* the old key after all requirements are met.
90
-
91
-
---
85
+
> **Do not delete old keys or key versions** until all pools and backups are successfully re-encrypted and validated. Only *disable* the old key after all requirements are met.
92
86
93
87
### Key Rotation Troubleshooting
94
88
95
89
If a SQL pool is stuck offline after a key rotation:
96
90
97
91
1.**Check the SQL pool key version** using PowerShell to confirm which key or key version the pool is expecting:
> The `ResourceGroupName` refers to the workspace's **managed resource group**. You can find this in the Azure portal by selecting your Synapse workspace and viewing the `managedResourceGroup` value in the JSON view.
96
+
> [!NOTE]
97
+
> The `ResourceGroupName` refers to the workspace's **managed resource group**. You can find this in the Azure portal by selecting your Synapse workspace and viewing the `managedResourceGroup` value in the JSON view.
98
+
103
99
2. **Enable** the required old key or key version in Azure Key Vault.
104
100
3. **Set an expiration date** in the future for the old key or key version.
105
101
4. Resume the SQL pool.
106
102
5. Once the pool is back online, allow it to re-encrypt with the new key.
107
103
6. **Verify the encryption status** of each database by running the following T-SQL query in your SQL pool:
104
+
108
105
```sql
109
106
SELECT
110
107
[name],
111
108
[is_encrypted]
112
109
FROM
113
110
sys.databases;
114
111
```
112
+
115
113
- The `is_encrypted` column will show the encryption status (`1` = encrypted, `0` = not encrypted).
114
+
116
115
7. After confirming all pools and backups are accessible and encrypted, you may safely disable (not delete) the old key or key version.
117
116
118
-
---
119
-
120
117
### Key access and workspace activation
121
118
122
119
The Azure Synapse encryption model with customer-managed keys involves the workspace accessing the keys in Azure Key Vault to encrypt and decrypt as needed. The keys are made accessible to the workspace either through an access policy or [Azure Key Vault RBAC](/azure/key-vault/general/rbac-guide). When granting permissions via an Azure Key Vault access policy, choose the ["Application-only"](/azure/key-vault/general/security-features#key-vault-authentication-options) option during policy creation (select the workspaces managed identity and do not add it as an authorized application).
@@ -126,6 +123,7 @@ The workspace managed identity must be granted the permissions it needs on the k
Workspaces can be configured to use a [User-assigned Managed identity](../../active-directory/managed-identities-azure-resources/overview.md) to access your customer-managed key stored in Azure Key Vault. Configure a User-assigned Managed identity to avoid phased activation of your Azure Synapse workspace when using double encryption with customer-managed keys. The Managed Identity Contributor built-in role is required to assign a user-assigned managed identity to an Azure Synapse workspace.
130
128
131
129
> [!NOTE]
@@ -190,4 +188,4 @@ Use the following cmdlets for Azure Synapse workspace.
190
188
## Related content
191
189
192
190
- [Use built-in Azure Policies to implement encryption protection for Synapse workspaces](../policy-reference.md)
193
-
- [Create an Azure key vault and a key by using Resource Manager template](/azure/key-vault/keys/quick-create-template)
191
+
- [Create an Azure key vault and a key by using Resource Manager template](/azure/key-vault/keys/quick-create-template)
0 commit comments