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

在 Azure AI Foundry 中使用客户管理的密钥进行加密

Azure AI Foundry 门户中的客户管理的密钥(CMK)提供对数据加密的增强控制。 通过使用 CMK,可以管理自己的加密密钥,以添加额外的保护层并更有效地满足合规性要求。

关于 Azure AI Foundry 中的加密

Azure AI Foundry 是 Microsoft Azure 云中的一项服务。 默认情况下,服务使用Microsoft管理的加密密钥来加密传输中的数据和静态数据。

中心和基于中心的项目资源是 Azure 机器学习工作区的实现,用于加密传输中的数据和静态数据。 有关详细信息,请参阅 使用 Azure 机器学习进行数据加密

数据使用符合 FIPS 140-2256 位 AES 加密方法进行加密和解密。 加密和解密都是透明的,这意味着将替你管理加密和访问。 你的数据默认情况下就是安全的,你无需修改代码或应用程序,即可利用加密。

使用客户管理的密钥时存储加密的数据

可以通过 Azure 门户或模板选项在创建资源期间启用客户管理的密钥加密。 加密数据使用您的加密密钥存储在由Microsoft管理的服务端资源上。

注释

由于使用客户管理的密钥加密数据时某些服务的专用托管模型,可能会收取额外的费用。

注释

使用服务器端加密时,Azure 费用将继续在软删除保留期内累积。

将客户管理的密钥与 AI 中心配合使用时加密数据的服务端存储

使用客户管理的密钥时,可以使用两个体系结构选项:

  • 加密数据存储在Microsoft订阅中(建议)

    数据存储在Microsoft托管的服务端资源上,而不是存储在您订阅中托管的资源中。 元数据使用文档级 CMK 加密存储在多租户资源中。 Azure AI 搜索实例托管在每个客户、每个中心的 Microsoft 端。

  • 加密数据存储在订阅中

    数据存储在您的订阅中,使用 Microsoft 托管的资源组,该资源组包括 Azure 存储帐户、Azure Cosmos DB 资源和 Azure AI 搜索。 无法修改这些资源的配置。 不支持更改其配置。

    使用同一中心的所有项目将数据存储在由名称 azureml-rg-hubworkspacename_GUID 标识的受管理资源组中的资源上。 项目在与这些资源进行交互时使用 Microsoft Entra ID 身份验证。 如果中心具有专用链接终结点,则对受管理资源的网络访问将受到限制。 删除中心时,受管理资源组也将被删除。

    以下数据存储在受管理资源上。

    服务 用途 示例:
    Azure Cosmos DB(Azure 宇宙数据库) 存储 Azure AI 项目和工具的元数据 索引名称、标记;流创建时间戳;部署标记;评估指标
    Azure AI 搜索 存储用于帮助查询 Azure AI Foundry 内容的索引。 基于模型部署名称的索引
    Azure 存储帐户 存储有关如何编排自定义任务的说明 Azure AI Foundry 门户中创建的流的 JSON 表示形式

配合使用客户管理的密钥和 Azure 密钥保管库

必须使用 Azure Key Vault 来存储客户管理的密钥。 可以创建自己的密钥并将其存储在 Key Vault 中,或者使用 Azure Key Vault API 来生成密钥。 Azure AI Foundry 资源和密钥保管库必须位于同一区域和同一Microsoft Entra 租户中,但它们可以位于不同的订阅中。 有关 Azure Key Vault 的详细信息,请参阅什么是 Azure Key Vault?

  • 必须同时启用密钥保管库上的“软删除”和“不清除”属性 。
  • 如果使用密钥保管库防火墙,则必须允许受信任的 Microsoft 服务访问密钥保管库。
  • 必须授予您的 Foundry 项目系统分配的托管标识以下权限,以访问您的密钥库:获取密钥加密密钥解密密钥

必须使用 Azure Key Vault 来存储客户管理的密钥。 可以创建自己的密钥并将其存储在 Key Vault 中,或者使用 Azure Key Vault API 来生成密钥。 Azure AI 服务资源和密钥库必须位于同一地区和同一 Microsoft Entra 租户中,但它们可以属于不同的订阅。 有关 Azure Key Vault 的详细信息,请参阅什么是 Azure Key Vault?

要启用客户管理的密钥,包含密钥的密钥保管库必须满足以下要求:

  • 必须同时启用密钥保管库上的“软删除”和“不清除”属性 。
  • 如果使用密钥保管库防火墙,则必须允许受信任的 Microsoft 服务访问密钥保管库。
  • 必须向中心和 Azure AI 服务资源的系统分配托管标识授予对密钥保管库的以下权限:获取密钥、包装密钥、解包密钥。

Azure AI Foundry 存在以下限制:

  • 仅支持具有旧访问策略的 Azure Key Vault。
  • Azure AI 服务加密只支持大小为 2048 的 RSA 和 RSA-HSM 密钥。 有关密钥的详细信息,请参阅关于 Azure Key Vault 密钥、机密和证书中的“Key Vault 密钥”。
  • 项目子资源目前不支持从 Customer-Managed 密钥更新到Microsoft管理的密钥。 如果更新了加密密钥,项目将继续引用加密密钥。

启用 Azure AI Foundry 资源的托管身份验证

必须启用托管身份,以便使用由客户管理的密钥。

  1. 转到 Azure 门户中的 Azure AI Foundry 资源。
  2. 在左侧的“资源管理”下,选择“身份”。
  3. 将系统分配的托管标识状态切换到“开”。
  4. 保存更改,并确认希望启用系统分配的托管标识。

启用客户管理的密钥

客户管理的密钥加密通过 Azure 门户进行配置,且每个 Azure 资源的配置方式相似:

重要

用于加密的 Azure Key Vault 必须与 AI Foundry 项目 位于同一资源组 中。 部署向导或项目配置工作流当前不支持其他资源组中的 Key Vault。

  1. Azure 门户中创建新的 Azure AI Foundry 资源。

  2. 在“ 加密 ”选项卡下,选择 客户管理的密钥选择保管库和密钥,然后选择要使用的密钥保管库和密钥。

    AI Foundry 项目的加密选项卡的屏幕截图,其中选择了客户管理的密钥选项。

  3. 继续按常规创建资源。

局限性

  • 用于加密的客户管理的密钥只能更新为同一 Azure Key Vault 实例中的密钥。
  • 部署后,Foundry 项目无法从Microsoft管理的密钥切换到客户管理的密钥,反之亦然。
  • 在软删除保留期内,Azure 对 AI Foundry 资源的收费将继续累积。 项目费用不会在软删除保留期内持续产生。

Azure AI Foundry 基于中心构建,作为 Azure 机器学习工作区、Azure AI 服务的实现,使你能够与 Azure 中的其他资源连接。 必须专门在每个资源上设置加密。

客户管理的密钥加密通过 Azure 门户进行配置,且每个 Azure 资源的配置方式相似:

  1. 在 Azure 门户中创建新的 Azure 资源。

  2. 在“加密”选项卡下,选择加密密钥。

    “加密”选项卡的屏幕截图,其中已选中“服务端加密”选项。

或者,使用基础结构即代码选项实现自动化。 可在 Azure 快速入门存储库中找到适用于 Azure AI Foundry 的示例 Bicep 模板:

  1. 中心的 CMK 加密
  2. 中心的服务端 CMK 加密预览版

局限性

  • 用于加密的客户管理的密钥只能更新为同一 Azure Key Vault 实例中的密钥。
  • 部署后,中心无法从 Microsoft 管理的密钥切换到客户管理的密钥,反之亦然。
  • Azure AI Foundry Customer-Managed 密钥请求表单 需要将客户管理的密钥与 Azure 语音和内容审查器功能结合使用。
  • 语音和内容审查器仍然要求填写 Azure AI Foundry 客户管理的密钥请求表单
  • 如果 AI Foundry 资源处于软删除状态 (#preview-service-side-storage-of-encrypted-data-when-using-customer-managed-keys),则在软删除保留期内,任何额外的 Azure 费用将继续累积。