【问题标题】:secured environment for web App AzureWeb App Azure 的安全环境
【发布时间】:2017-09-26 06:48:40
【问题描述】:

我想在 azure web App 上部署一个 3 层应用程序。

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

我希望 API 位于私有 Subnet.IN 中,换句话说,我只希望在步骤 1 中部署的 WebApp 访问此 Api,该 API 再次部署在 Azure WebApp 中。 如何做到这一点?

【问题讨论】:

标签: azure azure-web-app-service


【解决方案1】:

如果我正确理解您的拓扑,这就是您想要实现的场景:

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

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

有两种方法可以实现这一点,具体取决于您的安全容忍度。

1) 更安全

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

2) 不太安全 将您的 api 应用程序和 Web 应用程序部署到常规应用程序服务计划,启用 vnet 集成功能,然后在 API 应用程序上configure ip restrictions 以允许您的 Web 应用程序将使用的 IP 地址上的流量。您可以在您创建的应用的属性下找到它:

在这种情况下,从技术上讲,您的 api 仍然有一个公共端点,但其上的流量会受到您的 ip 限制规则的限制/阻止。

【讨论】:

  • 嗨拜伦,感谢您的回答。这是我想要实现但不想使用 ASE,而是想阻止所有到 API 的流量。为此,我创建了一个用户定义的路线并添加了一条规则,但 API 仍然可以公开使用。此外,由于某些原因,我们无法将 NSG 附加到 webApp。有什么方法可以阻止 API 的流量吗?同样,Web 应用程序和 API 都在同一个 Vnet 中,并且连接到同一个网关子网。
  • 如果没有应用服务环境,第二个选项“安全性较低”是您能做的最好的选择。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-01-22
  • 1970-01-01
  • 2020-06-27
  • 2021-07-27
  • 2016-06-19
  • 2011-02-06
相关资源
最近更新 更多