Skip to content

Commit d320ad6

Browse files
committed
Sudheesh suggestions
1 parent 6255564 commit d320ad6

17 files changed

+68
-25
lines changed
Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -12,10 +12,15 @@ ms.topic: conceptual
1212

1313
# Customer managed keys data encryption – Azure Database for MySQL – Flexible Server Preview
1414

15+
[!INCLUDE[applies-to-mysql-flexible-server](../includes/applies-to-mysql-flexible-server.md)]
16+
1517
With data encryption with customer-managed keys for Azure Database for MySQL - Flexible Server Preview, you can bring your own key (BYOK) for data protection at rest and implement separation of duties for managing keys and data. With customer managed keys (CMKs), the customer is responsible for and in a full control of key lifecycle management (key creation, upload, rotation, deletion), key usage permissions, and auditing operations on keys.
1618

1719
Data encryption with CMKs is set at the server level. For a given server, a CMK, called the key encryption key (KEK), is used to encrypt the data encryption key (DEK) used by the service. The KEK is an asymmetric key stored in a customer-owned and customer-managed [Azure Key Vault instance](../../key-vault/general/security-features.md). Key Vault is highly available and scalable secure storage for RSA cryptographic keys, optionally backed by FIPS 140-2 Level 2 validated hardware security modules (HSMs). Key Vault does not allow direct access to a stored key, but instead provides encryption/decryption services using the key to the authorized entities. The key can be generated by the key vault, imported, or [transferred to the key vault from an on-prem HSM device](../../key-vault/keys/hsm-protected-keys.md).
1820

21+
> [!Note]
22+
> In the Public Preview, we can't enable geo redundancy on a flexible server that has CMK enabled, nor can we enable geo redundancy on a flexible server that has CMK enabled.
23+
1924
## Terminology and description
2025

2126
**Data encryption key (DEK)**: A symmetric AES256 key used to encrypt a partition or block of data. Encrypting each block of data with a different key makes crypto analysis attacks more difficult. Access to DEKs is needed by the resource provider or application instance that is encrypting and decrypting a specific block. When you replace a DEK with a new key, only the data in its associated block must be re-encrypted with the new key.
@@ -44,7 +49,7 @@ To configure the CMK for an Azure Database for MySQL flexible server, you need t
4449

4550
When you configure a flexible server to use a CMK stored in the key vault, the server 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 flexible server will send the protected DEK to the key vault for decryption.
4651

47-
:::image type="content" source="media/concepts-customer-managed-key-mysql-flexible-server/mysql-customer-managed-key.jpg" alt-text="Diagram of how data encryption with a customer-managed key works.":::
52+
:::image type="content" source="media/concepts-customer-managed-key/mysql-customer-managed-key.jpg" alt-text="Diagram of how data encryption with a customer-managed key works.":::
4853

4954
After logging is enabled, auditors can use Azure Monitor to review Key Vault audit event logs. To enable logging of [Key Vault auditing events](../../key-vault/key-vault-insights-overview.md), see Monitoring your key vault service with Key Vault insights.
5055

@@ -70,7 +75,7 @@ Before you attempt to configure the CMK, be sure to address the following requir
7075
- If you're [importing an existing key](/rest/api/keyvault/keys/import-key/import-key?tabs=HTTP) into the key vault, make sure to provide it in the supported file formats (.pfx, .byok, .backup).
7176

7277
> [!Note]
73-
> For detailed, step-by-step instructions about how to configure date encryption for an Azure Database for MySQL flexible server via the Azure portal, see [Configure data encryption for MySQL Flexible server](../single-server/how-to-data-encryption-portal.md).
78+
> For detailed, step-by-step instructions about how to configure date encryption for an Azure Database for MySQL flexible server via the Azure portal, see [Configure data encryption for MySQL Flexible server](how-to-data-encryption-portal.md).
7479
7580
## Recommendations for configuring data encryption
7681

@@ -114,16 +119,13 @@ Once Azure Database for MySQL flexible server is encrypted with a customer's man
114119

115120
When attempting to restore an Azure Database for MySQL flexible server, you're given the option to select the User managed identity, and Key to encrypt the restore server.
116121

117-
> [!Note]
118-
> In the Public Preview, we cannot enable geo redundancy on a flexible server that has CMK enabled, nor can we enable geo redundancy on a flexible server that has CMK enabled.
119-
120122
To avoid issues while setting up customer-managed data encryption during restore or read replica creation, it's important to follow these steps on the source and restored/replica servers:
121123

122124
- Initiate the restore or read replica creation process from the source Azure Database for MySQL Flexible server.
123125
- On the restored/replica server, revalidate the customer-managed key in the data encryption settings to ensure that the User managed identity is given _Get, List, Wrap key_ and _Unwrap key_ permissions to the key stored in Key Vault.
124126

125127
## Next steps
126-
- [Data encryption with Azure CLI (Preview)](tutorial-data-encryption-mysql-flexible-server-cli.md)
127-
- [Data encryption with Azure portal (Preview)](tutorial-data-encryption-mysql-flexible-server-portal.md)
128+
- [Data encryption with Azure CLI (Preview)](how-to-data-encryption-cli.md)
129+
- [Data encryption with Azure portal (Preview)](how-to-data-encryption-portal.md)
128130
- [Azure Key Vault instance](../../key-vault/general/security-features.md)
129131
- [Security in encryption rest](../../security/fundamentals/encryption-atrest.md)
Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,12 @@ ms.reviewer: maghan
77
ms.date: 09/15/2022
88
ms.service: mysql
99
ms.subservice: flexible-server
10-
ms.topic: conceptual
10+
ms.topic: how-to
1111
---
1212

13-
# Tutorial: Data encryption for Azure Database for MySQL - Flexible Server with Azure CLI Preview
13+
# Data encryption for Azure Database for MySQL - Flexible Server with Azure CLI Preview
14+
15+
[!INCLUDE[applies-to](../includes/applies-to.md)]
1416

1517
This tutorial shows you how to set up and manage data encryption for your Azure Database for MySQL - Flexible Server using Azure CLI preview.
1618

@@ -77,6 +79,9 @@ You can verify the above attributes of the key by using the following command:
7779
az keyvault key show --vault-name \<key\_vault\_name\> -n \<key\_name\>
7880
```
7981

82+
> [!Note]
83+
> In the Public Preview, we can't enable geo redundancy on a flexible server that has CMK enabled, nor can we enable geo redundancy on a flexible server that has CMK enabled.
84+
8085
## Update an existing MySQL flexible server with data encryption
8186

8287
Set or change key and identity for data encryption:
@@ -243,5 +248,6 @@ The params **identityUri** and **primaryKeyUri** are the resource ID of the user
243248

244249
## Next steps
245250

246-
- [Customer managed keys data encryption (Preview)](concepts-customer-managed-key-mysql-flexible-server.md)
247-
- [Data encryption with Azure portal (Preview)](tutorial-data-encryption-mysql-flexible-server-portal.md)
251+
- [Customer managed keys data encryption (Preview)](concepts-customer-managed-key.md)
252+
- [Data encryption with Azure portal (Preview)](how-to-data-encryption-portal.md)
253+
Lines changed: 19 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,12 @@ ms.reviewer: maghan
77
ms.date: 09/15/2022
88
ms.service: mysql
99
ms.subservice: flexible-server
10-
ms.topic: conceptual
10+
ms.topic: how-to
1111
---
1212

13-
# Tutorial: Data encryption for Azure Database for MySQL - Flexible Server by using the Azure portal Preview
13+
# Data encryption for Azure Database for MySQL - Flexible Server by using the Azure portal Preview
14+
15+
[!INCLUDE[applies-to](../includes/applies-to.md)]
1416

1517
This tutorial shows you how to set up and manage data encryption for your Azure Database for MySQL flexible server.
1618

@@ -32,33 +34,36 @@ In this tutorial, you learn how to:
3234

3335
1. In Key Vault, select **Access policies**, and then select **Create**.
3436

35-
:::image type="content" source="media/tutorial-set-data-encryption-portal-mysql-flexible-server/1-mysql-key-vault-access-policy.jpeg" alt-text="Screenshot of Key Vault Access Policy in the Azure portal.":::
37+
:::image type="content" source="media/how-to-data-encryption-portal/1-mysql-key-vault-access-policy.jpeg" alt-text="Screenshot of Key Vault Access Policy in the Azure portal.":::
3638

3739
2. On the **Permissions** tab, select the following **Key permissions - Get** , **List** , **Wrap Key** , **Unwrap Key**.
3840

3941
3. On the **Principal** tab, select the User-assigned Managed Identity.
4042

41-
:::image type="content" source="media/tutorial-set-data-encryption-portal-mysql-flexible-server/2-mysql-principal-tab.jpeg" alt-text="Screenshot of the principal tab in the Azure portal.":::
43+
:::image type="content" source="media/how-to-data-encryption-portal/2-mysql-principal-tab.jpeg" alt-text="Screenshot of the principal tab in the Azure portal.":::
4244

4345
4. Select **Create**.
4446

47+
> [!Note]
48+
> In the Public Preview, we can't enable geo redundancy on a flexible server that has CMK enabled, nor can we enable geo redundancy on a flexible server that has CMK enabled.
49+
4550
## Configure customer managed key
4651

4752
To set up the customer managed key, perform the following steps.
4853

4954
1. In the portal, navigate to your Azure Database for MySQL flexible server, and then, under **Security** , select **Data encryption**.
5055

51-
:::image type="content" source="media/tutorial-set-data-encryption-portal-mysql-flexible-server/3-mysql-data-encryption.jpeg" alt-text="Screenshot of the data encryption page.":::
56+
:::image type="content" source="media/how-to-data-encryption-portal/3-mysql-data-encryption.jpeg" alt-text="Screenshot of the data encryption page.":::
5257

5358
2. On the **Data encryption** page, under **No identity assigned** , select **Change identity** ,
5459

5560
3. In the **Select user assigned**** managed identity **dialog box, select the** demo-umi **identity, and then select** Add**.
5661

57-
:::image type="content" source="media/tutorial-set-data-encryption-portal-mysql-flexible-server/4-mysql-assigned-managed-identity-demo-uni.jpeg" alt-text="Screenshot of selecting the demo-umi from the assigned managed identity page.":::
62+
:::image type="content" source="media/how-to-data-encryption-portal/4-mysql-assigned-managed-identity-demo-uni.jpeg" alt-text="Screenshot of selecting the demo-umi from the assigned managed identity page.":::
5863

5964
4. To the right of **Key selection method** , either **Select a key** and specify a key vault and key pair, or select **Enter a key identifier**.
6065

61-
:::image type="content" source="media/tutorial-set-data-encryption-portal-mysql-flexible-server/5-mysql-select-key.jpeg" alt-text="Screenshot of the Select Key page in the Azure portal.":::
66+
:::image type="content" source="media/how-to-data-encryption-portal/5-mysql-select-key.jpeg" alt-text="Screenshot of the Select Key page in the Azure portal.":::
6267

6368
5. Select **Save**.
6469

@@ -69,29 +74,29 @@ To use data encryption as part of a restore operation, perform the following ste
6974
1. In the Azure portal, on the navigate Overview page for your server, select **Restore**.
7075
1. On the **Security** tab, you specify the identity and the key.
7176

72-
:::image type="content" source="media/tutorial-set-data-encryption-portal-mysql-flexible-server/6-mysql-navigate-overview-page.jpeg" alt-text="Screenshot of overview page.":::
77+
:::image type="content" source="media/how-to-data-encryption-portal/6-mysql-navigate-overview-page.jpeg" alt-text="Screenshot of overview page.":::
7378

7479
2. Select **Change identity** and select the **User assigned managed identity** and select on **Add**
7580
**To select the Key** , you can either select a **key vault** and **key pair** or enter a **key identifier**
7681

77-
:::image type="content" source="media/tutorial-set-data-encryption-portal-mysql-flexible-server/7-mysql-change-identity.jpeg" alt-text="SCreenshot of the change identity page.":::
82+
:::image type="content" source="media/how-to-data-encryption-portal/7-mysql-change-identity.jpeg" alt-text="SCreenshot of the change identity page.":::
7883

7984
## Using Data encryption for replica servers
8085

8186
After your Azure Database for MySQL flexible server is encrypted with a customer's managed key stored in Key Vault, any newly created copy of the server will also be encrypted.
8287

8388
1. To configuration replication, under **Settings** , select **Replication** , and then select **Add replica**.
8489

85-
:::image type="content" source="media/tutorial-set-data-encryption-portal-mysql-flexible-server/8-mysql-replication.jpeg" alt-text="Screenshot of the Replication page.":::
90+
:::image type="content" source="media/how-to-data-encryption-portal/8-mysql-replication.jpeg" alt-text="Screenshot of the Replication page.":::
8691

8792
2. In the Add Replica server to Azure Database for MySQL dialog box, select the appropriate **Compute + storage** option, and then select **OK**.
8893

89-
:::image type="content" source="media/tutorial-set-data-encryption-portal-mysql-flexible-server/9-mysql-compute-storage.jpeg" alt-text="Screenshot of the Compute + Storage page.":::
94+
:::image type="content" source="media/how-to-data-encryption-portal/9-mysql-compute-storage.jpeg" alt-text="Screenshot of the Compute + Storage page.":::
9095

91-
> [!Important}
96+
> [!Important]
9297
> When trying to encrypt Azure Database for MySQL flexible server with a customer managed key that already has a replica(s), we recommend configuring the replica(s) as well by adding the managed identity and key.
9398
9499
## Next steps
95100

96-
- [Customer managed keys data encryption (Preview)](concepts-customer-managed-key-mysql-flexible-server.md)
97-
- [Data encryption with Azure CLI (Preview)](tutorial-data-encryption-mysql-flexible-server-cli.md)
101+
- [Customer managed keys data encryption (Preview)](concepts-customer-managed-key.md)
102+
- [Data encryption with Azure CLI (Preview)](how-to-data-encryption-cli.md)

0 commit comments

Comments
 (0)