【Azure 架构师学习笔记】- Azure Private Endpoint

本文属于【Azure 架构师学习笔记】系列。

前言

公有云的其中一个特点是默认允许公网访问, 这就对企业环境带来风险,也是很多年前企业对公有云抵触的其中一个原因,现在这类问题已经很少,因为有了很多技术来确保云上的资源被安全地访问。其中Private endpoint(PE)就起到了很重要的作用。

什么是Private Endpoint

云上的某个资源如VM会创建在特定的网络(VNet/Subnet)上, 而其他如Storage Account , Azure SQL等PaaS服务则没有。 如果你需要用VM 来访问这些PaaS资源,VM 就会通过资源的公网IP 来访问。

一旦涉及公网访问,风险随之而来。为了避免这种风险,可以把这些PaaS资源放到VNet的Private Endpoint中。所以PE是建立在VNet之上网络接口。建立PE 之后,网络流量就会从公网IP 转成使用VNet进行。

PE会在VNet的可用地址区间中动态选择private IP并附加给PE,然后在PE的生命周期中保持IP 地址的一致。

PE 例子

假设有一个VNet,使用IP 地址范围为10.10.0.0/16。 在这个VNet中,有两个subnet, A :10.10.5.0/24 和 B:0.10.6.0/24。在A 中有多个VM。有一个Storage account启用了private endpoint, 这个PE 在Subnet B中。

在Subnet A 中的VM 要访问Storage Account时也可以通过PE的IP 地址访问,因为PE 是建立在VNet中,A, B 均属于同一个VNet。 如果不在这个VNet中的资源,如果配置了如配对VNet(Peered VNet) 或者VPN、Express Route(ER)等,也可以直接使用PE 的地址来访问。

对于绝大部分资源,PE都可以在资源本身创建和管理,这一点不像SE


也可以在network interface上创建,这是一个独立的资源,和SE中的SE policy类似。

虽然从下图可以看到Private IP 地址是动态的,但是在这个资源被删除前,一旦创建则不会变化。

DNS

在没有PE 前,使用的是公开可用的endpoint,这种endpoint使用internet-resolvale domain name,不需要管理DNS 命名。但是当使用PE 之后则需要DNS服务来做内部解析。

有两种方式可以操作,第一种是在现有DNS 中创建一个forwarder。PE 一ing包含了资源的FQDN和private IP, 需要创建一个A record用于为客户端解决FQDN 到private IP 地址的解析问题。

第二种方式使用Azure 的private DNS zones。它在VNet中进行域名解析,不需要定制DNS。

小结

  1. 由于PE 建立在VNet上,所以它带有VNet的一些天然的属性,比如限定在同一个region(区域)和Subscription 中。如果需要跨region或subscription, 则要做VNet Peering。
  2. PE 建立之后,客户端可以通过PE 访问资源,但是资源不能通过PE 访问客户端,这种连接是单向的。
相关推荐
编码者卢布2 天前
【Azure APIM】通过 API Management 公开API为 MCP Server 的试验 (二)
microsoft·flask·azure
编码者卢布3 天前
【Azure APIM】通过 API Management 公开现有 MCP Server 的试验 (一)
microsoft·flask·azure
立心者05 天前
Sdcb Chats .. 发布,彻底移除 Azure.AI.OpenAI 专用包
人工智能·flask·azure
韭菜炒鸡肝天6 天前
【App Service】在Azure环境中如何查看App Service实例当前的网络连接情况呢?
microsoft·flask·azure
国际云,接待10 天前
Azure Front Door WAF实战:托管规则、限速与日志查询
microsoft·网络安全·云计算·azure·front door
编码者卢布15 天前
【Azure Policy】Policy修正任务为Azure资源添加诊断日志报错问题的调查
microsoft·flask·azure
编码者卢布17 天前
【Azure APIM】APIM的诊断日志与Application Insights的日志是否可以串联为一个端到端的日志链路呢?
python·flask·azure
MicrosoftReactor21 天前
技术速递|基于 OpenClaw、MCP 和 Azure Container Apps 构建自主 Microsoft Teams 智能体
microsoft·agent·azure·teams·mcp
编码者卢布22 天前
【Azure Application Insights】公网白名单应用如何使用 Application Insights 可用性测试?
flask·azure·可用性测试
IT大白鼠1 个月前
CVE-2026-7531 Azure Linux MariaDB PQC 内存破坏漏洞详解
linux·mariadb·azure·cve-2026-7531