我们的注册表单上有使用 AJAX 调用来检查用户名是否可用的功能。
这很简单
- 拨打我们的服务电话
- 对照数据库检查用户名
- 如果找到用户名记录,则返回,否则返回可用。
一旦用户停止输入几秒钟,我们就会执行对我们服务的调用。
然而,我们的问题是,攻击者可以对我们的服务使用某种蛮力手段并编译我们所有用户名的列表。
有谁知道任何帮助防止这种“攻击”的好方法?
我唯一能想到的就是预先要求验证码,但这不会是一个好的用户体验,并且可能会让人们无法填写我们的表格。
如果它有帮助,我们正在使用 ASP.NET MVC、C#、SQL Server。
任何帮助将不胜感激,谢谢!