azure - 如何使用虚拟网络保护从应用服务到 Azure Sql 数据库的访问?
问题描述
设想
我想使用虚拟网络来限制仅从我的应用服务访问 Azure 数据库,这样我就可以在防火墙设置中打开“允许访问应用服务”
我做了什么:
- 我去了应用服务->网络-> VNET集成->设置->创建新的虚拟网络
- 我使用默认设置创建了新的 VNET。
- 创建 VNET 后,我转到 App Service -> Networking -> VNET Integration 并确保 VNET 已连接
- 我去了 SQL Firewall settigs -> Virtual Network -> Add existing Virtual Newtork 并选择了我的 VNET。我保留了默认子网和地址空间:“default / 10.0.0.0/24”,并且未选中 IgnoreMissingServiceEndpoint 标志。
我现在可以在我的 VNET 中看到 Microsoft.Sql 服务端点:
问题
但是,我仍然得到
SqlException:无法打开登录请求的服务器“my-sqlserver”。IP 地址为“52.233”的客户端。. ' 不允许访问服务器。:
我错过了什么?
解决方案
如果您想通过服务端点锁定从您的应用程序对 Azure SQL、存储、Cosmos DB 等服务的访问,您可以使用新的 VNet 集成功能。该功能的早期形式需要网关并建立在点对点 VPN 之上。您应用程序的源 IP 将是指向站点地址的点之一。仅当您的源 IP 是 VNet 地址之一时,服务终结点才有效。
通过新的 VNet 集成,您的应用后端将使用所选子网中的 IP 进行调用。这意味着您可以在该子网上设置服务端点。
不要与应用程序的服务端点混淆。这是最近发布的功能,可将应用程序的流量锁定到选定的 VNet/子网。
推荐阅读
- c++ - 对同时包含数字和字母的字符串数组进行数字排序的方法?(C++)
- python - 选择未出现在内部联接 pandas 中的行
- oracle-apex - 如何在页面按钮上的交互式网格中添加警告弹出窗口
- php - 在 PowerShell 上使用 Invoke-WebRequest 从 php 脚本中获取数组
- flutter - Flutter UI - 像 Uber 应用程序一样的自定义 TextFormField 转换
- reactjs - 更改 Gatsby 链接行为 - 页面更改时停止滚动动画
- google-play - SubscriptionPurchase.Get 响应中缺少 Google Play Developer API cancelSurveyResult
- ios - 手机重启后iOS静默通知不起作用
- airflow - 在 Airflow 中跨不同任务重用参数值
- java - 获取USB 3.0设备盘符(Windows下Java)