gpt4 book ai didi

javascript - 如何防止机器人程序和垃圾 API 请求?

转载 作者:行者123 更新时间:2023-11-29 23:44:39 25 4
gpt4 key购买 nike

我正在使用 react-native 开发一个 Android 应用程序,该应用程序与我正在为该应用程序开发的 API 进行通信。 API 是使用 Laravel 和 Laravel Passport 构建的。

我知道 Android 应用程序可以反编译,因此可以轻松找到应用程序中存储的任何 key 。这就是我采用当前方法的原因。

您只能在注册时获得访问代码。该应用程序使用匿名帐户,因此如果您丢失了访问 token ,那就太糟糕了。该应用程序向 /api/register 发出 API 请求,创建帐户并返回访问 token 。该应用程序将存储 token 并使用它来发出进一步的 API 请求。

问题在于注册路由不使用任何客户端 secret 或访问 token 。自动发送对路线的请求并创建机器人大军非常容易。我可能会像许多 API 提供商那样限制请求的数量,但这并不能解决问题。

我听说过有效负载散列,但这通常需要在应用程序和 API 中都包含盐。同样,这是不安全的,如果有人知道垃圾邮件请求的盐分,就不能自己散列吗?也许我误解了有效负载哈希的工作原理。

希望有人能提供帮助。

最佳答案

您可能想要使用一些东西来检测用户代理命中路由。这个包有很多有用的功能:jenssegers/agent .例如,它提供爬虫检测:

$agent->isRobot();

根据您的托管服务提供商,您可以访问在每分钟 X 次请求(或其他指标)后自动将 ip 地址列入黑名单的工具。我知道 AWS 提供这项服务。

另一个选项是 antonioribeiro/firewall .根据 ip 或地理位置跟踪用户并相应地重定向/阻止。

关于javascript - 如何防止机器人程序和垃圾 API 请求?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51555051/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com