你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
本文介绍如何为 Azure Database for MySQL 设置和管理数据加密,该加密侧重于静态加密,从而保护数据库中存储的数据。
在这篇文章中,你将学会如何:
- 为 Azure Database for MySQL 设置数据加密。
- 为还原配置数据加密。
- 为副本服务器配置数据加密。
Azure 密钥保管库访问配置现在支持两种类型的权限模型:Azure 基于角色的访问控制和保管库访问策略。 本文介绍如何使用保管库访问策略为 Azure Database for MySQL 配置数据加密。
可以选择使用 Azure RBAC 作为权限模型来授予对 Azure Key Vault 的访问权限。 为此,需要具有以下三个权限的内置角色或自定义角色,并使用 keyvault 中的访问控制(IAM)选项卡通过“角色分配”进行分配:
- KeyVault/vaults/keys/wrap/action
- KeyVault/保险库/密钥/解包/操作
- KeyVault/vaults/keys/read。 对于 Azure Key Vault 托管的 HSM,还需要在 RBAC 中分配“托管 HSM 加密服务加密用户”角色分配。
加密类型
Azure Database for MySQL 支持两种主要类型的加密,以帮助保护数据。 静态加密 可确保存储在数据库中的所有数据(包括备份和日志)通过加密磁盘来保护其不受未经授权的访问。 传输中的加密 (也称为通信加密)保护数据,因为它在客户端应用程序和数据库服务器之间移动,通常使用 TLS/SSL 协议。 这些加密类型同时为数据存储时和传输数据提供全面的保护。
- 静态加密:保护存储在数据库、备份和日志中的数据。 这是本文的主要焦点。
- 通信加密(传输中的加密):在客户端和服务器之间传输时保护数据,通常使用 TLS/SSL 协议。
Prerequisites
- 具有活动订阅的 Azure 帐户。
- 如果没有 Azure 订阅,请在开始之前创建一个 Azure 免费帐户。
> [!注意] > 使用 Azure 免费帐户,现在可以免费试用 Azure Database for MySQL 灵活服务器 12 个月。 有关详细信息,请参阅使用 Azure 免费帐户免费试用 Azure Database for MySQL - 灵活服务器。
为密钥操作设置正确的权限
- 在密钥保管库中,选择“访问策略”,然后选择“创建”。
在“权限”选项卡上,选择以下密钥权限:“获取”、“列出”、“包装密钥”、“解包密钥”。
在“主体”选项卡上,选择“用户分配的托管标识”。
- 选择“创建”。
配置客户管理的密钥
若要设置客户管理的密钥,请执行以下步骤。
- 在门户中,导航到 Azure Database for MySQL 灵活服务器实例,然后在“安全性”下选择“数据加密”。
在“数据加密”页中的“未分配标识”下,选择“更改标识”。
在“选择用户分配的托管标识”对话框中选择“demo-umi”标识,然后选择“添加”。
- 在“密钥选择方法”的右侧,选择“选择密钥”并指定密钥保管库和密钥对,或者选择“输入密钥标识符”。
- 选择“保存”。
使用数据加密进行还原
若要在还原作中使用数据加密,请执行以下步骤。
- 在 Azure 门户中,导航到服务器的“概述”页,然后选择“ 还原”。 1.在 “安全 ”选项卡上,指定标识和密钥。
- 选择“更改标识”,选择“用户分配的托管标识”,然后选择“添加”若要选择密钥,可以选择密钥保管库和密钥对,或输入密钥标识符
为副本服务器使用数据加密
在使用客户存储在密钥保管库中的托管密钥对 Azure Database for MySQL 灵活服务器实例进行加密后,还将对服务器的任何新创建的副本进行加密。
- 若要配置复制,请在“设置”下选择“复制”,然后选择“添加副本”。
- 在“将副本服务器添加到 Azure Database for MySQL”对话框中,选择相应的“计算 + 存储”选项,然后选择“确定”。
> [!重要说明] 当尝试使用客户管理的密钥加密已具有副本的 Azure Database for MySQL 灵活服务器时,我们建议通过添加托管标识和密钥来配置一个或多个副本。