REST API 防止虚假攻击

REST API protection from fake attack

我如何保护我的 REST API 以识别某些用户/脚本生成的虚假请求并用数百万个请求淹没我的服务器?

如果有人编写了任何脚本或程序并对我的 REST API 产生了数百万次调用,我该如何保护我的服务免受这些请求的影响,这样我的 API 就不会宕机。一种方法是我可以使用验证码,但当来电者是人类时,验证码很有用。如果来电者是我无法使用验证码的应用程序。是否有任何框架可用于处理此类情况?

您可以为每个请求传递一个令牌。

此令牌应使用任何加密算法并使用密钥在客户端和 REST 服务中加密和解密令牌。

例如:

Client request : What is the weather of Chennai ? Token : chennai + 123 (Key)

Server Response : chennai123 : its valid : response 40 !!

Here key is 123 it should not available in public

您的服务遇到的是 DoS / DDoS 攻击。这是目前对 Web 服务最常见的攻击之一。

有很多方法可以减轻这种攻击 归结为将 API 消费者发出的合法请求与 attacker/attackers 执行的恶意请求分开。此类攻击通常是自动进行的,因此请求在某种程度上彼此相似(IP 范围、HTTP headers 等)。例如,一种非常简单的方法是识别攻击来自的 IP 范围并在您的服务防火墙上将其阻止。

这里有一些帖子讨论了 (D)DoS 的预防,例如How do major sites prevent DDoS? or What techniques do advanced firewalls use to protect againt DoS/DDoS?.

第三方 services/products 可能会帮助您保护您的 API。我不想在这里提及任何内容,因为我不想为它们中的任何一个做广告。您需要进行一些搜索。

祝你好运。