适用于Web应用程序的安全环境Azure

问题描述:

我想在Azure Web App上部署3层应用程序。适用于Web应用程序的安全环境Azure

  1. 将应用程序部署到Azure Web App并将此WebApp链接到虚拟网络。
  2. 此应用程序使用的API,我部署在另一个Azure WebApp
  3. Api使用DataBAse,它是天蓝数据库。

我希望API处于私有子网.IN其他词我只希望在第1步中部署WebApp以访问此API,它将再次部署在Azure WebApp中。 如何做到这一点?

+0

您是否引用了[网络安全组](https://docs.microsoft.com/en-us/azure/virtual-network/virtual-networks-nsg)? –

+0

是的!我们不能将NSG与网关子网相关联。 – Sonam

如果我理解您的拓扑正确的,这是你希望实现的方案:

[前端] - > [API] - > [数据库]

前端应当可以公开访问。 API应该只能通过vnet访问 数据库应该只能被API应用访问。

根据您的安全容差,有两种方法可以实现此目的。

1)更多安全

部署你的API到Internal Load Balanced App Service Environment。通过这样做你的API应用程序只能从vnet访问。然后,您需要部署Web应用程序,启用vNET Integration feature,以便2个应用程序可以相互交谈。

2)安全性较低的 同时部署您的API应用程序和Web应用程序到正规的应用程序服务计划,使互联星空集成功能,然后在API应用configure ip restrictions,允许在你的web应用程序将使用的IP地址的流量。您可以创建应用程序的性能下,找到这个:

enter image description here

在这种情况下,你的API仍然在技术上有一个公共端点,但在这交通将受到限制/阻止你的IP限制规则。

+0

嗨拜伦,谢谢你的答案。这是我想实现的,但不想使用ASE,而是想阻止所有流量的API。为此,我创建了一个用户定义的路线,并添加了一条规则,但仍然是API是公开的。此外,由于某些原因,我们无法将NSG附加到webApp。有没有办法阻止API的流量?再次,Web App和API都在同一个Vnet中,并且连接到相同的网关子网。 – Sonam

+0

没有应用程序服务环境,第二个选项“不太安全”是最好的。 –