虚拟网络配置参考:API 管理

本参考文章提供了以外部内部模式部署在 Azure 虚拟网络中的 API 管理实例的详细网络配置设置。

有关 VNet 连接选项、要求和注意事项,请参阅将虚拟网络与 Azure API 管理配合使用

所需端口

可以使用网络安全组规则控制其中部署了 API 管理的子网的入站和出站流量。 如果特定的端口不可用,API 管理可能无法正常工作且不可访问。

在 VNet 中托管 API 管理服务实例时,将使用下表中的端口。 某些要求因托管 API 管理实例的stv2的版本(stv2stv1)而异。

重要

  • “用途”列中以粗体显示的项表示成功部署和操作 API 管理服务所需的端口配置。 标有“可选”的配置用于启用如前所述的特定功能。 无需使用这些配置也能使服务的整体运行状况保持正常。

  • 配置 NSG 和其他网络规则时,建议使用指定的服务标记而非使用 IP 地址来指定网络源和目标。 当基础结构的改进需要对 IP 地址进行更改时,服务标记可以防止出现停机。

重要

使用 stv2 时,需要将网络安全组分配到 VNet,以便 Azure 负载均衡器正常工作。

源/目标端口 方向 传输协议 服务标记
源/目标
用途 VNet 类型
* / [80], 443 入站 TCP Internet / VirtualNetwork 客户端与 API 管理的通信 仅外部
* / 3443 入站 TCP ApiManagement / VirtualNetwork Azure 门户和 PowerShell 的管理终结点 外部和内部
* / 443 出站 TCP VirtualNetwork / Storage 与 Azure 存储的依赖关系 外部和内部
* / 443 出站 TCP VirtualNetwork / AzureActiveDirectory Microsoft Entra ID、Microsoft Graph 和 Azure Key Vault 依赖项(可选) 外部和内部
* / 1433 出站 TCP VirtualNetwork / Sql 访问 Azure SQL 终结点 外部和内部
* / 443 出站 TCP VirtualNetwork / AzureKeyVault 对 Azure 密钥保管库的访问权限 外部和内部
* / 5671, 5672, 443 出站 TCP VirtualNetwork / EventHub Azure 事件中心策略日志Azure Monitor 的依赖项(可选) 外部和内部
* / 445 出站 TCP VirtualNetwork / Storage 与适用于 GIT 的 Azure 文件共享的依赖关系(可选) 外部和内部
* / 1886、443 出站 TCP VirtualNetwork / AzureMonitor 发布诊断日志和指标资源运行状况Application Insights 外部和内部
* / 6380 入站和出站 TCP VirtualNetwork / VirtualNetwork 访问外部 Azure Cache for Redis 服务以在计算机之间缓存策略(可选) 外部和内部
* / 6381 - 6383 入站和出站 TCP VirtualNetwork / VirtualNetwork 访问内部 Azure Cache for Redis 服务以在计算机之间缓存策略(可选) 外部和内部
* / 4290 入站和出站 UDP VirtualNetwork / VirtualNetwork 同步计算机之间的速率限制策略的计数器(可选) 外部和内部
* / 6390 入站 TCP AzureLoadBalancer / VirtualNetwork Azure 基础结构负载均衡器 外部和内部
* / 443 入站 TCP AzureTrafficManager / VirtualNetwork 用于多区域部署的 Azure 流量管理器路由 外部

区域服务标记

允许与存储、SQL 和 Azure 事件中心服务标记建立出站连接的 NSG 规则可以使用与 API 管理实例所在区域相对应的那些标记的区域版本(例如,“中国北部”区域中 API 管理实例的对应区域版本为 Storage.ChinaNorth)。 在多区域部署中,每个区域中的 NSG 应该允许发送到该区域或主要区域的服务标记的流量。

TLS 功能

若要启用 TLS/SSL 证书链生成和验证,API 管理服务需要在端口 80443 上建立到 ocsp.msocsp.comoneocsp.msocsp.commscrl.microsoft.comcrl.microsoft.comcsp.digicert.com 的出站网络连接。 但若上传到 API 管理的任何证书包含指向 CA 根的完整链,则不需要此依赖项。

DNS 访问

需要端口 53 上的出站访问权限才能与 DNS 服务器通信。 如果 VPN 网关的另一端存在自定义 DNS 服务器,则该 DNS 服务器必须可从承载 API 管理的子网访问。

Microsoft Entra 集成

若要正常运行,API 管理服务需要在端口 443 上建立到与 Microsoft Entra ID 关联的以下终结点的出站连接:<region>.login.microsoft.comlogin.partner.microsoftonline.cn

指标和运行状况监视

与 Azure 监视终结点建立出站网络连接时,这些终结点将在下列域下解析,并根据 AzureMonitor 服务标记表示,以便与网络安全组配合使用。

Azure 环境 终结点
由世纪互联运营的 Azure
  • mooncake.warmpath.chinacloudapi.cn
  • global.prod.microsoftmetrics.com
  • shoebox2.prod.microsoftmetrics.com
  • shoebox2-red.prod.microsoftmetrics.com
  • shoebox2-black.prod.microsoftmetrics.com
  • prod3.prod.microsoftmetrics.com
  • prod3-red.prod.microsoftmetrics.com
  • prod5.prod.microsoftmetrics.com
  • prod5-black.prod.microsoftmetrics.com
  • prod5-red.prod.microsoftmetrics.com
  • gcs.prod.warm.ingestion.monitoring.azure.cn

开发人员门户验证码

允许在主机 client.hip.live.compartner.hip.live.com 下解析的开发人员门户 CAPTCHA 的出站网络连接。

发布开发人员门户

通过允许出站连接至中国北部区域的 blob 存储,即可在 VNet 中发布 API 管理实例的开发人员门户。 例如,在 NSG 规则中使用 Storage.ChinaNorth 服务标记。 当前若要针对任何 API 管理实例发布开发人员门户,都需要建立与中国北部区域的 blob 存储的连接。

Azure 门户诊断

从 VNet 内部使用 API 管理诊断扩展时,需要对端口 443 上的 dc.services.visualstudio.com 进行出站访问,以启用 Azure 门户的诊断日志流。 此访问有助于排查你在使用扩展时可能遇到的问题。

Azure 负载均衡器

无需允许来自开发人员 SKU 的 AzureLoadBalancer 服务标记的入站请求,因为其后只部署了一个计算单位。 但是,当扩展到更高 SKU(例如“高级”)时,来自 AzureLoadBalancer 的入站连接将变得关键,因为负载均衡器运行状况探测失败会阻止对控制平面和数据平面的所有入站访问。

Application Insights

如果已针对 API 管理启用 Azure Application Insights 监视功能,则允许从 VNet 到遥测终结点的出站连接。

KMS 终结点

将运行 Windows 的虚拟机添加到 VNet 时,请允许在端口 1688 上与云中的 KMS 终结点建立出站连接。 此配置会将 Windows VM 流量路由到 Azure 密钥管理服务 (KMS) 服务器,以完成 Windows 激活。

内部基础结构和诊断

维护和诊断 API 管理的内部计算基础结构需要以下设置和 FQDN。

  • 允许在端口 123 上进行出站 TCP 访问,以便支持 NTP。
  • 允许在端口 12000 上进行出站 TCP 访问,以便支持诊断。
  • 允许在端口 443 上对以下终结点进行出站访问,以便支持内部诊断:azurewatsonanalysis-prod.core.chinacloudapi.cn*.data.microsoft.comazureprofiler.trafficmanager.cnshavamanifestazurecdnprod1.azureedge.netshavamanifestcdnprod1.azureedge.net
  • 允许在端口 443 上对以下终结点进行出站访问,以便支持内部 PKI:issuer.pki.azure.com
  • 允许在端口 80443 上对以下终结点进行出站访问,以便支持 Windows 更新:*.update.microsoft.com*.ctldl.windowsupdate.comctldl.windowsupdate.comdownload.windowsupdate.com
  • 允许在端口 80443 上对终结点 go.microsoft.com 进行出站访问。
  • 允许在端口 443 上对以下终结点进行出站访问,以便支持 Windows Defender:wdcp.microsoft.comwdcpalt.microsoft.com

控制平面 IP 地址

重要

仅当某些网络场景中需要时,才应为网络访问规则配置 Azure API Management 的控制平面 IP 地址。 建议使用 ApiManagement 服务标记而不要使用控制平面 IP 地址,以防止在基础结构的改进需要对 IP 地址进行更改时出现停机。

Azure 环境 区域 IP 地址
由世纪互联运营的 Azure 中国北部(全球) 139.217.51.16
由世纪互联运营的 Azure 中国东部(全球) 139.217.171.176
由世纪互联运营的 Azure 中国北部 40.125.137.220
由世纪互联运营的 Azure 中国东部 40.126.120.30
由世纪互联运营的 Azure 中国北部 2 40.73.41.178
由世纪互联运营的 Azure 中国东部 2 40.73.104.4

了解有关以下方面的详细信息: