我有一个Java应用程序与Spring Boot框架,我需要实现一个机制(除了谷歌reCaptcha实现这是以前实现的)暴力登录尝试。在开始执行之前,首先我决定了场景,并且真的不知道与此相关的问题。您能就以下问题向我澄清并提出建议吗?
1。我想在数据库中使用一个计数器,用于每个用户失败的登录尝试,并在成功登录后重置其值。如果计数器值为10,那么我想禁用帐户30分钟,然后在此期间后激活。此操作也可以由admin执行。
然而,我不确定对于这种情况是否有更好的方法。任何建议吗?如果激活可以需要管理员并且可以自动完成,那就更好了。
2。您建议使用哪些技术和方法?我想到了SpringSecurity,但我不确定它是否适合上面的场景。
我认为最好和最简单的解决方案是reCAPTCHA验证。我同意。
编辑:对于你的第一个问题,你可以保存登录失败的日期,你可以计算它,甚至过滤它,如果它在10分钟内超过10次尝试,你会阻止用户的电子邮件。