你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

使用 Azure 门户通过主机加密来启用端到端加密

适用于:✔️ Linux VM ✔️ Windows VM

启用主机加密时,存储在 VM 主机上的数据将静态加密,且已加密的数据将流向存储服务。 有关主机加密以及其他托管磁盘加密类型的概念信息,请参阅主机加密 - VM 数据的端到端加密

临时磁盘和临时 OS 磁盘使用客户管理的密钥或平台管理的密钥进行静态加密,具体取决于为 OS 磁盘选择的磁盘加密类型。 OS 和数据磁盘缓存使用客户管理的密钥或平台管理的密钥进行静态加密,具体取决于所选磁盘加密类型。 例如,如果使用客户管理的密钥对磁盘进行加密,则使用客户管理的密钥对磁盘的缓存进行加密,如果使用平台管理的密钥对磁盘进行加密,则使用平台管理的密钥对磁盘的缓存进行加密。

限制

  • 在 4k 扇区大小的 Ultra Disks 和高级 SSD v2 上受支持。
  • 对于 512e 扇区大小的 Ultra Disks 和高级 SSD v2,只有这些磁盘创建于 2023 年 5 月 13 日之后时,才支持此功能。
  • 无法在当前启用过或曾经启用过 Azure 磁盘加密的虚拟机 (VM) 或虚拟机规模集上启用。
  • 无法在启用了主机加密的磁盘上启用 Azure 磁盘加密。
  • 可以在现有的虚拟机规模集上启用加密。 但是,只有启用加密后新建的 VM 才会自动加密。
  • 现有 VM 只有在经过释放和重新分配后才能加密。

支持的 VM 大小

不支持“旧的 VM 大小”。 可以使用 Azure PowerShell 模块Azure CLI 找到受支持的 VM 大小的列表。

先决条件

必须先为订阅启用该功能,然后才能对 VM 或虚拟机规模集使用主机加密。 使用以下步骤为订阅启用该功能:

  1. Azure 门户:在 Azure 门户中选择 Cloud Shell 图标:

    用于从 Azure 门户启动 Cloud Shell 的图标的屏幕截图。

  2. 执行以下命令,为订阅注册此功能

    Register-AzProviderFeature -FeatureName "EncryptionAtHost" -ProviderNamespace "Microsoft.Compute"
    
  3. 在试用该功能之前,请使用以下命令确认注册状态是否为“已注册”(注册可能需要几分钟)

    Get-AzProviderFeature -FeatureName "EncryptionAtHost" -ProviderNamespace "Microsoft.Compute"
    

使用平台管理的密钥部署 VM

  1. 登录到 Azure 门户

  2. 搜索“虚拟机”,然后选择“+ 创建”以创建 VM。

  3. 选择适当的区域和支持的 VM 大小。

  4. 根据需要填写“基本”窗格上的其他值,然后继续填写“磁盘”窗格。

  5. 在“磁盘”窗格上,选择“主机加密” 。

  6. 根据需要进行剩余选择。

    虚拟机创建“磁盘”窗格的屏幕截图,其中突出显示了“主机加密”。

  7. 对于其余的 VM 部署过程,请根据环境进行选择,然后完成部署。

现已部署启用了主机加密的 VM,并且使用平台管理的密钥对磁盘的缓存进行了加密。

使用客户管理的密钥部署 VM

或者,可使用客户管理的密钥对磁盘缓存进行加密。

创建 Azure Key Vault 和磁盘加密集

启用该功能后,需要设置 Azure 密钥保管库和磁盘加密集(如果尚未设置)。

如果你是第一次执行此操作,则为磁盘设置客户管理的密钥时会要求你按特定顺序创建资源。 首先,需要创建并设置 Azure Key Vault。

设置 Azure 密钥保管库

  1. 登录 Azure 门户

  2. 搜索并选择“Key Vault”。

    Azure 门户的屏幕截图,其中展开了“搜索”对话框。

    重要

    磁盘加密集、VM、磁盘和快照必须都位于同一区域和订阅中才能成功部署。 Azure Key Vault 可以在不同的订阅中使用,但必须与磁盘加密集位于同一区域和租户中。

  3. 选择“+创建”以创建新的 Key Vault。

  4. 创建新的资源组。

  5. 输入 Key Vault 名称,选择区域,然后选择定价层。

    注意

    创建 Key Vault 实例时,必须启用软删除和清除保护。 软删除可确保 Key Vault 在给定的保留期(默认为 90 天)内保留已删除的密钥。 清除保护可确保在保留期结束之前,无法永久删除已删除的密钥。 这些设置可防止由于意外删除而丢失数据。 使用 Key Vault 加密托管磁盘时,这些设置是必需的。

  6. 选择“审阅 + 创建”,验证选择,然后选择“创建” 。

    Azure Key Vault 创建体验的屏幕截图,显示所创建的特定值。

  7. Key Vault 部署完成后,请选择它。

  8. 选择“对象”下的“密钥”。

  9. 选择“生成/导入”。

    Key Vault 资源设置窗格的屏幕截图,显示设置中的“生成/导入”按钮。

  10. 将“密钥类型”设置为“RSA”,将“RSA 密钥大小”设置为“2048” 。

  11. 根据需要填写其余选项,然后选择“创建”。

    选择“生成/导入”按钮后出现的“创建密钥”窗格的屏幕截图。

添加 Azure RBAC 角色

你已创建 Azure 密钥保管库和密钥,现在必须添加 Azure RBAC 角色,以便可以将 Azure 密钥保管库用于磁盘加密集。

  1. 选择“访问控制(IAM)”并添加角色。
  2. 添加“Key Vault 管理员”、“所有者”或“参与者”角色。

设置磁盘加密集

  1. 搜索“磁盘加密集”并选择它。

  2. 在“磁盘加密集”窗格中,选择“+ 创建”。

  3. 选择资源组,命名加密集,然后选择与 Key Vault 相同的区域。

  4. 对于“加密类型”,请选择“使用客户管理的密钥进行静态加密”。

    注意

    一旦创建了具有特定加密类型的磁盘加密集,就无法对其进行更改。 如果要使用其他加密类型,则必须创建新的磁盘加密集。

  5. 确保选择了“选择 Azure 密钥保管库和密钥”。

  6. 选择先前创建的密钥保管库和密钥,以及版本。

  7. 如果要启用客户管理的密钥的自动轮换,请选择“自动密钥轮换”。

  8. 选择“审阅 + 创建”,然后选择“创建” 。

    “磁盘加密创建”窗格的屏幕截图。显示订阅、资源组、磁盘加密集名称、区域以及密钥保管库 + 密钥选择器。

  9. 部署磁盘加密集后,导航到该加密集,然后选择显示的警报。

    用户选择“若要将磁盘、映像或快照与此磁盘加密集关联,必须授予对密钥保管库的权限”警报的屏幕截图。

  10. 这会向磁盘加密集授予密钥保管库权限。

    确认已授予权限的屏幕截图。

部署 VM

设置了 Azure Key Vault 和磁盘加密集之后,你可以部署 VM,且它将使用主机加密功能。

  1. 登录 Azure 门户

  2. 搜索“虚拟机”,然后选择“+ 添加”以创建 VM 。

  3. 创建新的虚拟机,选择适当的区域和支持的 VM 大小。

  4. 根据需要填写“基本”窗格上的其他值,然后继续填写“磁盘”窗格 。

  5. 在“磁盘”窗格上,选择“主机加密” 。

  6. 选择“密钥管理”并选择客户管理的密钥之一。

  7. 根据需要进行剩余选择。

    “磁盘”窗格中虚拟机创建的屏幕截图,其中突出显示了“主机加密”,选中了“客户管理的密钥”。

  8. 对于其余的 VM 部署过程,请根据环境进行选择,然后完成部署。

你现在已经部署了一个 VM,并使用客户管理的密钥在主机上启用了加密。

禁用基于主机的加密

请首先将 VM 解除分配。除非 VM 被解除分配,否则无法禁用主机加密。

  1. 在 VM 上,选择“磁盘”,然后选择“其他设置” 。

    VM 上“磁盘”窗格的屏幕截图,其中突出显示了“其他设置”。

  2. 为“主机加密”选择“否”,然后选择“保存” 。

后续步骤

Azure 资源管理器模板示例