在前端和后端之间使用代理如何提高安全性?

问题描述 投票:0回答:1

交付我们的应用程序后,我们的客户进行了渗透测试,将问题标记为严重

该应用程序似乎使用一种架构,其中用户的浏览器与前端服务器(用于静态内容)和后端服务器(用于数据)进行通信。

澄清一下,我们有一个 frontendbackend 托管在两个单独的 Azure 应用服务中。当用户与前端交互时,会从客户端的 IP地址向后端发出请求以获取动态数据。

作为一种潜在的解决方案,我们正在考虑在前端和后端之间添加代理,以限制对后端的直接访问。但是,我不确定使用代理如何解决该问题。我的理解是,这只会添加另一层,这意味着用户仍然将请求发送到代理,然后代理将其转发到后端。

有人可以澄清如何在前端和后端之间放置代理来提高安全性并解决渗透测试问题吗?

azure proxy azure-web-app-service reverse-proxy azure-application-gateway
1个回答
0
投票

作为一种潜在的解决方案,我们正在考虑在前端和后端之间添加代理以限制对后端的直接访问。但是,我不确定使用代理如何解决该问题。我的理解是,这只会添加另一层,这意味着用户仍然将请求发送到代理,然后代理将其转发到后端。

一般来说,像 Azure Front Door 这样的代理定义了底层应用程序服务的单个入口点。这还意味着您可以将安全工作放在单个入口点上,以便任何现有或未来的服务都受到保护。当然,这仅适用于“仅”通过可以配置的代理访问应用程序服务的情况。 代理可以提供的一些东西:

防火墙保护
  • DDOS防护
  • 保护传输中的数据。启用端到端传输层安全性 (TLS)、HTTP 到 HTTPS 重定向以及托管 TLS 证书(如果适用)。
  • 机器人保护
  • IP限制
  • 地理过滤
  • 代理还可以删除或重写暴露有关后端服务的可能信息的标头。

PS.:您还应该向执行渗透测试的一方询问这个问题。

© www.soinside.com 2019 - 2024. All rights reserved.