如何在Synapse及ADF中创建连接应用网关的托管专用端点
解决方案:Synapse与ADF通过应用网关Private Link建立出站连接
一、Synapse工作区配置托管专用端点(MPE)
由于Synapse UI暂未提供应用网关的MPE选项,可通过ARM模板或PowerShell直接配置,该方案为Azure官方支持的原生管理方式。
1. ARM模板部署
创建ARM模板文件(如synapse-mpe-appgw.json),指定目标资源为应用网关,核心配置如下:
{ "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#", "contentVersion": "1.0.0.0", "resources": [ { "type": "Microsoft.Synapse/workspaces/managedPrivateEndpoints", "apiVersion": "2021-06-01", "name": "[concat('<your-synapse-workspace-name>', '/<mpe-name>')]", "properties": { "privateLinkResourceId": "[resourceId('Microsoft.Network/applicationGateways', '<your-appgw-name>')]", "groupId": "gateway", "managedVirtualNetwork": { "referenceName": "default", "type": "Microsoft.Synapse/workspaces/managedVirtualNetworks" } } } ] }
部署模板时,替换占位符<your-synapse-workspace-name>、<mpe-name>、<your-appgw-name>,使用Azure CLI执行部署:
az deployment group create --resource-group <your-resource-group> --template-file synapse-mpe-appgw.json
2. PowerShell命令配置
使用Azure PowerShell模块直接创建MPE:
$synapseWorkspaceName = "<your-synapse-workspace-name>" $mpeName = "<mpe-name>" $appGwResourceId = (Get-AzApplicationGateway -Name "<your-appgw-name>" -ResourceGroupName "<your-resource-group>").Id New-AzSynapseManagedPrivateEndpoint -WorkspaceName $synapseWorkspaceName -Name $mpeName -PrivateLinkResourceId $appGwResourceId -GroupId "gateway"
执行后,需在应用网关的Private Link连接列表中批准该请求,完成MPE的配置。
二、Azure Data Factory(ADF)配置
ADF中可通过以下两种方式配置应用网关的专用端点:
1. UI配置(自定义专用端点)
- 进入ADF工作区,导航至管理 > 托管虚拟网络 > 专用端点
- 点击新建,选择自定义类型
- 输入应用网关的资源ID,填写
groupId为gateway,完成创建后在应用网关端批准连接
2. ARM模板/PowerShell部署
与Synapse逻辑一致,使用ARM模板指定类型为Microsoft.DataFactory/factories/managedVirtualNetworks/managedPrivateEndpoints,或使用PowerShell命令New-AzDataFactoryManagedPrivateEndpoint,核心参数同样指向应用网关资源ID和groupId: gateway。
内容的提问来源于stack exchange,提问作者David Beavon
相关产品推荐
相关产品推荐

