使用虚拟网络保护 Azure API 管理的入站或出站流量
默认情况下,API 管理实例是通过公共终结点从 Internet 访问的,充当公共后端的网关。 API 管理提供了多个选项,以使用 Azure 虚拟网络保护对 API 管理实例和后端 API 的访问。 可用选项取决于 API 管理实例的服务层级。 选择网络功能以满足组织的需求。
下表对虚拟网络选项做了比较。 有关详细信息,请参阅本文的后面部分和指向详细指南的链接。
网络模型 | 支持的层 | 支持的组件 | 支持的流量 | 使用方案 |
---|---|---|---|---|
虚拟网络注入 - 外部 | 开发人员、高级 | 开发人员门户、网关、管理平面和 Git 存储库 | 可以允许 Internet、对等虚拟网络、Express Route 和 S2S VPN 连接的入站和出站流量。 | 对专用后端和本地后端的外部访问 |
虚拟网络注入 - 内部 | 开发人员、高级 | 开发人员门户、网关、管理平面和 Git 存储库 | 可以允许对等虚拟网络、Express Route 和 S2S VPN 连接的入站和出站流量。 | 对专用后端和本地后端的内部访问 |
入站专用终结点 | 开发人员、基本、标准、高级 | 仅网关(托管网关受支持,自承载网关不受支持) | 仅允许来自 Internet、对等虚拟网络、Express Route 和 S2S VPN 连接的入站流量。 | 保护到 API 管理网关的客户端连接 |
虚拟网络注入(经典层)
在 API 管理经典开发人员层和高级层中,将 API 管理实例部署(“注入”)到可控制访问权限的非 Internet 可路由网络的子网中。 在虚拟网络中,API 管理实例可以安全地访问其他联网的 Azure 资源,还可以使用各种 VPN 技术连接到本地网络。
你可以使用 Azure 门户、Azure CLI、Azure 资源管理器模板或其他工具进行配置。 可以使用网络安全组控制其中部署了 API 管理的子网的入站和出站流量。
有关部署步骤和网络配置的详细信息,请参阅:
访问选项
使用虚拟网络,你可以将开发人员门户、API 网关和其他 API 管理终结点配置为可从 Internet(外部模式)或仅在虚拟网络中(内部模式)访问。
外部 - 可以通过外部负载均衡器从公共 Internet 访问 API 管理终结点。 网关可以访问虚拟网络中的资源。
在外部模式下使用 API 管理访问部署在虚拟网络中的后端服务。
内部 - 只能通过内部负载均衡器从虚拟网络内部访问 API 管理终结点。 网关可以访问虚拟网络中的资源。
在内部模式中使用 API 管理可以:
- 通过使用 Azure VPN 连接或 Azure ExpressRoute,使专用数据中心内托管的 API 可被第三方安全访问。
- 通过公共网关公开基于云的 API 和本地 API,以便启用混合云方案。
- 使用单一网关终结点管理托管在多个地理位置的 API。
入站专用终结点
API 管理支持专用终结点,以便与 API 管理实例建立安全的入站客户端连接。 每个安全连接使用来自虚拟网络和 Azure 专用链接的专用 IP 地址。
通过专用终结点和专用链接,你可以:
创建到 API Management 实例的多个专用链接连接。
使用专用终结点通过安全的连接发送入站流量。
使用策略来区分来自专用终结点的流量。
将传入流量仅限制到专用终结点,防止数据外泄。
重要
有关详细信息,请参阅使用入站专用终结点以专用方式连接到 API 管理。
高级网络配置
使用 Web 应用程序防火墙保护 API 管理终结点
在某些情况下,可能需要安全地对 API 管理实例进行外部和内部访问,并灵活地访问专用后端和本地后端。 对于这些情况,可以选择使用 Web 应用程序防火墙 (WAF) 管理对 API 管理实例终结点的外部访问。
例如,在内部虚拟网络中部署 API 管理实例,并使用面向 Internet 的 Azure 应用程序网关来路由公共访问:
有关详细信息,请参阅使用应用程序网关在内部虚拟网络中部署 API 管理。
相关内容
详细了解使用 API 管理的虚拟网络配置:
若要了解有关 Azure 虚拟网络的详细信息,请先了解 Azure 虚拟网络概述中的信息。