有没有办法阻止来自Postman或其他应用程序调用Restful API的请求

z9gpfhce  于 2022-12-18  发布在  Postman
关注(0)|答案(1)|浏览(855)

Infra of system

**预期:**我要阻止不是来自服务器FE(domain.com)的请求

例如:用户从另一个应用程序(如Postman)发出请求-〉它将响应403,消息访问被拒绝。
我使用了ALB的规则,它可以工作,但用户可以欺骗 Postman 。我还使用AWS WAF来检测请求。但它不工作。有没有办法阻止来自 Postman 或其他应用程序的请求?我们可以生成secret_key并在服务器FE和服务器BE之间进行检查。但用户可以在头上看到它,并模拟 Postman 上的头,并调用API成功。

当前解决方案:我使用应用程序负载均衡器的规则来检查主机和源。但用户可以在Postman上添加这些参数并请求成功。Rule ALB当我添加匹配值(在ALB上设置)时-〉我们可以请求成功

Postman successPostman denied
用户可以作弊并调用API成功。感谢阅读。请帮助我给予任何解决这一问题的方法。非常感谢。

mspsb9vt

mspsb9vt1#

不可以。HTTP服务器无法知道哪个客户端正在发出HTTP请求。任何HTTP客户端(Browsers、PostMan、curl等)都能够发出彼此完全相同的请求。
user-agent头是一种表面上的方法,但是PostMan或任何其他HTTP客户机都可以很容易地将user-agent头伪装成一个使请求看起来像来自Web浏览器代理的头。
你只能让它变得更有挑战性。一些阻止这种行为的例子包括使用像谷歌验证码或CloudFlare浏览器完整性检查这样的工具,但它们不是防弹的,最终也不是100%有效地阻止人们使用工具/自动化以非预期的方式访问你的网站。在一天结束时,你被限制在HTTP所能做的事情上。PostMan可以在HTTP层做任何事情。

相关问题