Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何保护不需要的恶意请求的公共API路由?_Api_Express_Mern - Fatal编程技术网

如何保护不需要的恶意请求的公共API路由?

如何保护不需要的恶意请求的公共API路由?,api,express,mern,Api,Express,Mern,我目前正在做一个Fullstack Web项目,现在正在研究API安全性。我已经实现了一个用户登录,然后允许客户端访问我的API的大多数路由。但也有一些不受保护的路由,可以而且必须在无需登录(例如注册、登录等)的情况下访问 例如,一个路由返回特定用户名或电子邮件地址是否已被另一个用户使用并在注册过程中使用。对于有不良意图的人来说,这条公开途径将非常有助于找出哪些电子邮件地址或用户名要尝试破解或猜测密码,因为它们可以避免未使用的凭据 我知道大公司经常使用这个功能向用户显示他是否可以使用他想要的用户

我目前正在做一个Fullstack Web项目,现在正在研究API安全性。我已经实现了一个用户登录,然后允许客户端访问我的API的大多数路由。但也有一些不受保护的路由,可以而且必须在无需登录(例如注册、登录等)的情况下访问

例如,一个路由返回特定用户名或电子邮件地址是否已被另一个用户使用并在注册过程中使用。对于有不良意图的人来说,这条公开途径将非常有助于找出哪些电子邮件地址或用户名要尝试破解或猜测密码,因为它们可以避免未使用的凭据

我知道大公司经常使用这个功能向用户显示他是否可以使用他想要的用户名。他们如何确保没有虐待?如何保护我的API和用户不受此影响


我将感谢任何帮助。非常感谢

限制API滥用率限制是一种良好的做法。一种方法是指定每个IP地址的最大API请求量,然后忽略请求

您可以找到一篇很好的文章,介绍了实现NodeJS的解决方案,并展示了在NodeJS中实现的示例


感谢Gilbert Le Blanc的帮助。

限制滥用的一种方法是限制来自特定IP地址的事务数。换句话说,一分钟3到4次用户名查找是正常的,一分钟数百次用户名查找被机器人滥用。非常感谢。这是我需要的一种方式。你知道NodeJS(Express)的图书馆吗?这是一个开始。那篇文章看起来很棒。多谢各位。这很有帮助!