我允许用户根据一次性密码发送到用户手机号码登录我的网站。
我的问题是我正在进行Api调用,使用jquery ajax将otp发送到用户的手机号码。现在任何人都可以看到api调用并向我的服务器发出无限的api请求,这将立即使我的短信包过期。
如何避免滥用API调用?
答案 0 :(得分:0)
答案 1 :(得分:0)
Rails已经有CSRF protection。您需要为AJAX请求启用它们。启用它们时,如果没有为每个Web请求重新生成的CSRF令牌,其他任何人都无法重复您的AJAX调用。
其他选项包括使用rack-attack对来自同一IP的API请求进行速率限制。
答案 2 :(得分:0)
提供一些认证机制应该有效。这样,任何试图访问您的API的人都必须登录。将身份验证令牌存储在会话中并在服务器端验证它。 还有其他技术,如使用API机密/密钥。 请查看以下链接: https://stormpath.com/blog/secure-your-rest-api-right-way/