我是否需要使用 azure waf 和 web 应用程序指向站点 vpn

Do i need point to site vpn with azure waf and web app

我一直在与 Azure 打交道,试图启动一个 Web 应用程序 运行。我的计划是创建一个 WAF 并将 Web 应用程序置于其后,每个都在一个单独的子网中,然后使用服务端点技术将 Web 应用程序指向数据库。

如果我想在 Web 应用程序前面使用 WAF,我必须在 Web 应用程序中配置网络,但当我选择 vnet 时,它说,我几乎立即停止了我的轨道没有为选定的 VNET 配置网关。

我的问题是我是否必须使用点到站点 VPN 才能使此设置正常工作?我认为它会像

互联网 ---> VNET ----> 子网 ----> WAF -----> 子网 -----> Web 应用程序 ----> 服务终结点 ----- -> 数据库

但事实似乎并非如此。我不喜欢必须在我们网络中可能想要访问该网站(目前是内部网站)的每台机器上安装客户端证书的想法。我想我正在寻找两全其美的东西。可从互联网访问,但有一个额外的舒适感,比如 WAF 之类的东西放在它前面,以弥补该应用程序中可能存在的任何安全缺陷。

谢谢

如果您想将 Azure WAF 与 Azure 应用服务 (multi-tenant) 结合使用,您只需确保向主机 header 提供您的请求。

如果您想要 VNet 上的 Azure Web 应用程序,您将需要 运行 应用程序服务环境(隔离)上的 Azure Web 应用程序。此版本的 Azure Web 应用程序更昂贵,但允许您将 NSG 应用到 VNet 以完全控制对您的 Web 应用程序的访问。我个人认为 WAF w/ Azure App Service (multi-tenant) 应该可以满足您的需求。

我们在此处记录了所有内容:

https://docs.microsoft.com/en-us/azure/application-gateway/application-gateway-web-app-overview

https://docs.microsoft.com/en-us/azure/application-gateway/configure-web-app-portal

据我所知,除非使用应用服务环境(独立),否则无法在 VNet 中部署 Web 应用。 App VNet integration 做不到。它允许您安全地访问 VNet 中的资源。例如,您在私有 VNet 中的 Azure VM 上有一个数据库。如果此数据库不可用,则无法从 Azure Web 应用程序访问此数据库 publicly,但您可以通过应用程序 VNet 集成访问它。

VNet service endpoints 是另一种不同的服务。终结点允许你将关键的 Azure 服务资源保护到仅虚拟网络。如果您在 VNet 中启用像 Azure SQL 数据库(不同于 Azure VM 上的数据库)这样的服务端点,这意味着只有这些授权 VNet 中的资源才能访问您的 SQL 数据库,除非您添加数据库防火墙中的 public IP 地址排除。

在这种情况下,您可以在 Web 应用服务的高层放置一个 Public 面向 Azure 应用网关,然后将 Azure 应用网关 public IP 添加到 IP restriction of the web app.This will restrict to access to web app via Azure web app gateway over the Internet. Also, you could control the network inbound and outbound in Azure app gateway subnet NSG. See Network security groups on the Application Gateway subnet 如果要将 NSG 添加到应用程序网关子网级别。如果您只想创建一个 WAF 并在其后面放置网络应用程序,我认为这些就足够了。

此外,如果您想让网络应用私下访问 Azure SQL 数据库。您可以在 ASE 中部署 Web 应用程序,然后为 Azure SQL 数据库启用 VNet 服务端点。 App VNet 集成不需要将其与服务终结点一起使用。