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

将 Batch 帐户证书迁移到 Azure Key Vault

2024 年 2 月 29 日,Azure Batch 帐户证书功能将停用。 本文介绍如何使用 Azure Key Vault 迁移 Azure Batch 帐户上的证书。

关于功能

在各种方案中,通常都需要证书,例如解密机密、保护信道或访问其他服务。 目前,Azure Batch 提供了两种方法来管理 Batch 池上的证书。 可以将证书添加到 Batch 帐户,也可以使用 Azure Key Vault VM 扩展来管理 Batch 池上的证书。 仅停用 Azure Batch 帐户上的证书功能及其通过对添加池补丁池更新属性CertificateReference 以及对获取和列出池 API 的相应引用扩展到 Batch 池的功能。 此外,对于 Linux 池,将不再定义和填充环境变量 $AZ_BATCH_CERTIFICATES_DIR

功能支持结束日期

Azure Key Vault 是在 Azure 中安全地存储和访问机密和证书的标准推荐机制。 因此,我们将于 2024 年 2 月 29 日停用 Azure Batch 中的 Batch 帐户证书功能。 另一种方法是使用 Azure Key Vault VM 扩展和池上用户分配的托管标识来安全地访问和安装 Batch 池上的证书。

Azure Batch 中的证书功能于 2024 年 2 月 29 日停用后,Batch 中的证书将无法正常运行。 在该日期之后,无法再将证书添加到 Batch 帐户或将这些证书链接到 Batch 池。 在此日期后继续使用此功能的池可能无法正常运行,例如无法更新证书引用或安装现有证书引用。

替代方法:结合使用 Azure Key Vault VM 扩展与池用户分配的托管标识

Azure Key Vault 是一项完全托管的 Azure 服务,提供了用于存储和管理机密、证书、令牌和密钥的受控访问权限。 Key Vault 在传输层提供安全性的方式是确保从密钥保管库到客户端应用程序的任何数据流经过加密。 使用 Azure Key Vault 可以安全地存储基本访问信息和设置精细访问控制。 可以通过一个仪表板管理所有机密。 选择将密钥存储在受软件保护或受硬件保护的硬件安全模块 (HSM) 中。 还可以将密钥库设置为自动重新更新证书。

有关如何使用池用户分配的托管标识启用 Azure Key Vault VM 扩展的完整指南,请参阅在 Batch 池中启用自动证书轮换

常见问题解答

  • CloudServiceConfiguration 池是否支持池上的 Azure Key Vault VM 扩展和托管标识?

    错误。 CloudServiceConfiguration 池将于 2024 年 2 月 29 日与 Azure Batch 帐户证书一起停用。 建议在该日期之前迁移到 VirtualMachineConfiguration 池,以便使用这些解决方案。

  • 用户订阅池分配 Batch 帐户是否支持 Azure Key Vault?

    是的。 你可以在池中使用 Batch 帐户指定的 Key Vault,但用于 Batch 池证书的 Key Vault 可能是完全独立的。

  • Key Vault VM 扩展是否同时支持 Linux 和 Windows Batch 池?

    是的。 请参阅适用于 WindowsLinux 的文档。

  • 是否可以使用 密钥库 VM 扩展更新现有池?

    否,这些属性在池上不可更新。 需要重新创建池。

  • 既然 $AZ_BATCH_CERTIFICATES_DIR 将被删除,那么我如何在 Linux Batch 池上实现对证书的引用?

    使用适用于 Linux 的 密钥库 VM 扩展可以指定certificateStoreLocation存储证书的绝对路径。 密钥库 VM 扩展将作用域为仅具有超级用户(根)特权的指定位置安装的证书。 需要确保任务在默认情况下运行提升以访问这些证书,或将证书直接复制到可访问的证书和/或调整具有适当文件模式的证书文件。 可以将此类命令作为提升的启动任务或作业准备任务的一部分运行。

  • 如何实现安装.cer不包含私钥的文件?

    密钥库不认为这些文件是特权文件,因为它们不包含私钥信息。 可以使用以下任一方法安装 .cer 文件。 对关联的用户分配的托管标识使用具有适当访问权限的密钥库机密,并在开始任务中提取.cer文件以安装。 或者,将.cer文件存储为 Azure 存储 Blob,并在要安装的开始任务中作为 Batch 资源文件进行引用。

  • 如何实现访问为任务级别非管理员自动用户池标识安装密钥库扩展的证书?

    任务级自动用户是按需创建的,无法预定义以指定密钥库 accounts VM 扩展中的属性。 你需要一个自定义过程,用于将所需的证书导出到通常可访问的存储或 ACL 中,供任务级自动用户适当访问。

  • 在哪里可以找到使用 Azure Key Vault 的最佳做法?

    请参阅 Azure Key Vault 最佳做法

后续步骤

有关详细信息,请参阅 Key Vault 证书访问控制。 若要详细了解与此迁移相关的 Batch 功能,请参阅 Azure Batch 池扩展Azure Batch 池托管标识