REST API防止伪造攻击

REST API防止伪造攻击,rest,api,protection,Rest,Api,Protection,我如何保护我的RESTAPI来识别由某个用户/脚本生成的假请求,并用数百万个请求淹没我的服务器 如果有人编写了任何脚本或程序,并对我的RESTAPI生成了数百万个调用,我如何保护我的服务不受这些请求的影响,从而使我的API不会崩溃。一种方法是我可以使用captcha,但当调用方是人时,captcha很有用。如果调用方是一个应用程序,我不能使用验证码。是否有任何框架可用于处理此类场景?您可以为每个请求传递一个令牌 此令牌应使用任何加密算法,并使用密钥对客户端和REST服务中的令牌进行加密和解密 例

我如何保护我的RESTAPI来识别由某个用户/脚本生成的假请求,并用数百万个请求淹没我的服务器


如果有人编写了任何脚本或程序,并对我的RESTAPI生成了数百万个调用,我如何保护我的服务不受这些请求的影响,从而使我的API不会崩溃。一种方法是我可以使用captcha,但当调用方是人时,captcha很有用。如果调用方是一个应用程序,我不能使用验证码。是否有任何框架可用于处理此类场景?

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

此令牌应使用任何加密算法,并使用密钥对客户端和REST服务中的令牌进行加密和解密

例:


您的服务遇到的情况称为a/攻击。这是目前对web服务最常见的攻击之一

有很多方法可以缓解这种攻击 将API使用者发出的合法请求与攻击者/攻击者执行的恶意请求分离。这种攻击通常是自动化的,因此请求在某种程度上类似于另一个IP范围、HTTP头等。。例如,一个非常简单的方法是识别攻击来自的IP范围,并在服务的防火墙上阻止它

这里有一些帖子讨论了DDoS的预防,例如,或

第三方服务/产品可能会帮助您保护API。我不想在这里提及任何一个,因为我不想为其中任何一个做广告。你需要做一些搜索


祝你好运。

我不认为@bikkie指的是身份验证/授权。你可能希望实现一种算法,限制到达实际服务的请求数,或者通常阻止超过请求数的请求。后者可以通过利用本地短期缓存(即5-10分钟)轻松实现,该缓存只需计算每个IP接收的请求数,一旦超过阈值,就可以防止进一步处理下游内容。
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