如何仅使用1个移动应用程序连接Api的特定URL

时间:2019-02-25 20:32:25

标签: javascript node.js api

我有一个API,并且具有用户注册系统。

该api由移动应用程序使用。 (大多数URL不允许匿名使用。令牌密钥用于全部。不包括注册URL 。)

并且必须打开注册网址。我的意思是该网址没有要授权的令牌密钥。因为没有授权用户。这是寄存器级别。

当然,注册网址容易受到攻击。我们如何预防这种情况?

1 个答案:

答案 0 :(得分:2)

您有多种选择,具体取决于您的威胁模型以及您要保护端点免受的威胁。以下是其中一些:

  • Rate limiting techniques ,以防止出现异常数量的查询爆炸端点。例如,您可以在一个时间窗口中计数来自某个IP地址的请求数,如果超过某个阈值,则可以阻止该IP
  • reCAPTCHA 也可能有用。您可以要求/register的所有请求都具有在解决 captcha 之后获得的令牌。打击垃圾邮件非常常见的技术
  • IP blacklisting 。例如,由于所有节点都是公共节点,因此可以阻止来自TOR network IP。您还可以包含任意IP,这些IP根据您的上下文可能看起来可疑
  • User agent黑名单。如果您想限制Web scraping活动,这可能会有所帮助。例如,您可以选择只允许主流Web浏览器中的一组用户代理