共用方式為

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

应用到: ✔️ Linux VM ✔️ Windows VM

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

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

限制

  • 无法在当前或以前已启用Azure Disk Encryption的虚拟机(VM)或虚拟机规模集上启用。
  • 无法在启用了主机加密的磁盘上启用Azure Disk Encryption。
  • 可以在现有的虚拟机规模集上启用加密。 但是,只有启用加密后新建的 VM 才会自动加密。
  • 现有虚拟机只有在经过释放和重新分配后才能加密。

以下限制仅适用于超级磁盘和高级 SSD v2:

  • 使用 512e 扇区大小的磁盘需要在 2023 年 5 月 13 日之后创建。
    • 如果磁盘在此日期之前创建, 请创建磁盘快照,并使用快照创建新磁盘。

支持的 VM 大小

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

先决条件

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

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

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

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

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

  1. 登录到 Azure 门户

  2. 搜索 Virtual Machines 并选择 + Create 以创建 VM。

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

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

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

  6. 你可以随意选择剩余部分。

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

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

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

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

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

创建 Azure 密钥保管库和磁盘加密集

启用该功能后,您需要设置 Azure Key Vault 和 磁盘加密集(如果尚未设置)。

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

设置您的 Azure Key Vault

  1. 登录到 Azure 门户

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

    Azure 门户的截图,搜索对话框已展开。

    重要

    磁盘加密集、VM、磁盘和快照必须都位于同一区域和订阅中才能成功部署。 Azure 密钥保管库可以用于不同的订阅,但它们必须与您的磁盘加密集位于同一区域和租户中。

  3. 选择 +Create 创建新的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 AdministratorOwnerContributor 角色。

设置磁盘加密集

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

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

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

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

    注意

    一旦您创建了具有特定加密类型的磁盘加密集,该加密类型就不能更改。 如果要使用其他加密类型,则必须创建新的磁盘加密集合。

  5. 请确保已选择Azure密钥保管库和密钥

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

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

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

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

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

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

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

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

部署 VM

现在您已经设置好 Azure Key Vault 和磁盘加密集,可以部署 VM,并在主机上启用加密功能。

  1. 登录到 Azure 门户
  2. 搜索 Virtual Machines 并选择 + Create 以创建 VM。
  3. 创建新的虚拟机,选择适当的区域和支持的 VM 大小。
  4. 根据自己的喜好填写“基本”窗格上的其他值,然后继续前往“磁盘”窗格。
  5. 在“磁盘”窗格上,将“加密类型”选择为“客户管理密钥的静态加密”,然后选择您的磁盘加密集。
  6. 选择“主机端加密”。
  7. 你可以随意选择剩余部分。
  1. 对于其余的 VM 部署过程,请根据环境进行选择,然后完成部署。

你现在已经部署了启用主机级加密且由客户管理密钥的 VM。

禁用基于主机的加密

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

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

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

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

后续步骤

Azure Resource Manager模板示例