为 Azure 虚拟机上的 SQL Server 配置 Azure Key Vault 集成(Resource Manager)

Azure VM 上的SQL Server

SQL Server提供了多种加密功能,例如 transparent 数据加密(TDE)列级别加密(CLE)备份加密。 这些加密方法要求管理和存储用于加密的加密密钥。 Azure Key Vault服务通过将密钥存储在安全且高度可用的位置来提高这些密钥的安全性和管理。 SQL Server 连接器使SQL Server能够从Azure Key Vault使用这些密钥。

如果在本地运行 SQL Server,请按照文档《从本地 SQL Server 实例访问 Azure 密钥保管库》中的步骤进行操作。 相同的步骤适用于 Azure VM 上的SQL Server,但可以使用 Azure Key Vault Integration 功能节省时间。

注意

对于 SQL Server 2017 及更低版本,Azure Key Vault集成仅适用于SQL Server企业版、开发人员版和评估版。 SQL Server 2019 引入了对标准版的支持。

所有与 Azure Key Vault 设置相关的 TDE 可扩展密钥管理(EKM)操作必须由 SQL Server 计算机的管理员执行,Transact-SQL(T-SQL)命令则由 sysadmin 执行。 有关使用 Azure Key Vault 设置 TDE EKM 的详细信息,请参阅 使用 Azure Key Vault0 设置 SQL Server TDE 可扩展密钥管理。

启用此功能时,它会自动安装 SQL Server 连接器,将 EKM 提供程序配置为访问Azure Key Vault,并创建用于访问保管库的凭据。 如果查看前面提到的本地文档中的步骤,则会看到此功能自动执行步骤 3、4 和 5(最多 5.4 创建凭据)。 请确保创建服务主体(步骤 1),并使用授予服务主体的适当权限创建密钥保管库(步骤 2)。 请参阅Azure基于角色的访问控制Vault访问策略部分,以了解要使用哪些权限。

从那里,SQL Server VM 的整个设置都是自动化的。 此功能完成设置后,可以执行 Transact-SQL (T-SQL) 语句,以像平常一样开始加密数据库或备份。

注意

还可以使用模板配置Key Vault集成。 有关详细信息,请参阅 Azure 快速入门模板以了解 Azure Key Vault 集成

SQL Server连接器版本 1.0.5.0 通过 SQL 基础结构即服务(IaaS)扩展安装在 SQL Server VM 上。 升级 SQL IaaS 代理扩展不会更新提供程序版本。 如果安装了较旧版本,请考虑手动升级 SQL Server 连接器版本。 可以使用以下 T-SQL 查询检查SQL Server连接器版本:

SELECT name, version from sys.cryptographic_providers

启用和配置Key Vault集成

可以在预配期间启用密钥保管库集成,或为现有 VM 配置密钥保管库集成。

新的虚拟机

如果要使用 Resource Manager 预配新的 SQL 虚拟机,Azure门户提供了一种启用Azure Key Vault集成的方法。

在 Azure 门户中创建具有 Azure Key Vault 集成的 Azure VM 上的 SQL Server 的截图。

有关预配的详细演练,请参阅Azure 门户中的 Azure VM 上预配 SQL Server。 可以在 Azure Key Vault 集成中查看参数列表及其说明。

现有 VM

对于现有的 SQL 虚拟机,请打开 SQL 虚拟机资源。 在 “安全性”下,选择“ 安全配置”。 选择 Enable 以启用 Azure Key Vault 集成

以下屏幕截图显示了如何在门户中为 Azure VM 上的现有SQL Server启用Azure Key Vault:

Azure 门户中 Azure VM 上现有 SQL Server 的 Key Vault 集成设置的屏幕截图。

完成后,选择“安全”页底部的“应用”以保存更改。

注意

凭据名称稍后会映射到登录名。 此映射授予对密钥保管库的登录访问权限。 在 使用 Azure Key Vault 设置 SQL Server TDE 可扩展密钥管理 的步骤 5.4 中讨论了创建凭据的手动步骤,但你需要使用 ALTER LOGIN 并将凭据添加到你创建的登录名。

ALTER LOGIN [login_name] ADD CREDENTIAL [credential_name];

继续从使用 Azure Key Vault 设置 SQL Server TDE 可扩展密钥管理的步骤 5.5 开始,以完成 EKM 设置。