使用虚拟网络保护 Azure 机器学习推理环境

本文介绍如何在 Azure 机器学习中使用虚拟网络保护推理环境(联机终结点)。 可以使用 VNet 保护两个推理选项:

  • Azure 机器学习托管联机终结点

    提示

    保护托管联机终结点时,Azure 建议使用 Azure 机器学习“托管虚拟网络”,以替代本文中的步骤。 使用托管虚拟网络,Azure 机器学习可处理工作区和托管计算的网络隔离作业。 还可以为工作区所需的资源(例如 Azure 存储帐户)添加专用终结点。 有关详细信息,请参阅工作区托管网络隔离

  • Azure Kubernetes 服务

提示

本文是介绍如何保护 Azure 机器学习工作流系列文章的一部分。 请参阅本系列中的其他文章:

有关创建安全工作区的教程,请参阅教程:创建安全工作区Bicep 模板Terraform 模板

先决条件

  • 阅读网络安全概述一文,了解常见的虚拟网络方案和总体虚拟网络体系结构。

  • 现有虚拟网络和子网,用于保护 Azure 机器学习工作区。

  • 若要将资源部署到虚拟网络或子网中,你的用户帐户必须在 Azure 基于角色的访问控制 (Azure RBAC) 中具有以下操作的权限:

    • 虚拟网络资源上的“Microsoft.Network/*/read”。 对于 Azure 资源管理器 (ARM) 模板部署,不需要此权限。
    • “Microsoft.Network/virtualNetworks/join/action”(在虚拟网络资源上)。
    • "Microsoft.Network/virtualNetworks/subnets/join/action"(在子网资源上)。

    若要详细了解如何将 Azure RBAC 与网络配合使用,请参阅网络内置角色

保护托管联机终结点

若要了解如何保护托管联机终结点,请参阅对托管联机终结点使用网络隔离一文。

保护 Azure Kubernetes 服务联机终结点

若要使用 Azure Kubernetes 服务群集以进行安全推理,请使用以下步骤:

  1. 创建或配置安全的 Kubernetes 推理环境

  2. 部署 Azure 机器学习扩展

  3. 将 Kubernetes 群集附加到工作区

  4. 可以使用 CLI v2、Python SDK v2 和 Studio UI 执行具有 Kubernetes 联机终结点的模型部署。

限制来自虚拟网络的出站连接

如果你不想要使用默认的出站规则,同时想要限制虚拟网络的出站访问,则必须允许访问 Azure 容器注册表。 例如,确保网络安全组 (NSG) 包含允许访问“AzureContainerRegistry.RegionName”服务标记的规则,其中的 {RegionName} 是 Azure 区域的名称。

后续步骤

本文是介绍如何保护 Azure 机器学习工作流系列文章的一部分。 请参阅本系列中的其他文章: