Показать captcha после трех неправильных попыток пользователя

Я работаю над приложением, где в некоторых местах мне нужно ввести captcha, если n количество попыток не удалось. Эти места можно подписаться, вход, добавить в избранное, подписаться и т. д. Это также должно гарантировать, что атака отказа в обслуживании и атака грубой силы не может быть предпринята кем-либо. Есть ли механизм для этого в Spring Security?

4 ответов


в Spring Security нет ничего напрямую, но должно быть легко сохранить количество входа в сеанс пользователей и проверить, что количество в вашем JSP для отображения капчи необходимо.


реализовать AuthenticationFailureHandler, который обновляет количество / время в БД. Вы не можете рассчитывать на использование сеанса, потому что злоумышленник все равно не будет отправлять куки-файлы.



Если вы используете reCAPTCHA С безопасностью весны, это полезно http://krams915.blogspot.com/2011/02/spring-security-3-integrating-recaptcha.html