Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java EE (J2EE) и Spring > Защита от подбора пароля


Автор: COVD 27.1.2009, 23:36
Очевидно, что после нескольких неудачных попыток логина необходимо блокировать запросы на некоторое время. Реализовано ли это в стандартных способах J2EE авторизации? 

Автор: polosatij 28.1.2009, 19:39

не знаю, насколько есть ещё более готовое решение (мне не попадалось), но, например, можено посмотреть сюда:

http://edocs.bea.com/wls/docs61/webapp/web_xml.html#1019996

<login-config> + <form-login-config> в web.xml

и

<form-login-page> + <form-error-page>

по-мойму, единственного, чего не хватает это маленького Controller-a + записи в таблицу (1 поле) о времени блокировки  smile 


пс: я посмотрел, ты томкат копаешь, там есть такая фишка: http://tomcat.apache.org/tomcat-6.0-doc/realm-howto.html, но насколько можно реализовать блокировку я не знаю и там ничего тоже под руку не попалось.. возможно, ты сам уже был на этой странице smile

ппс: а вообще, о стандартных решениях, посмотри SpringMVC + хибернате + velocity. там контролер + конфигурация + бд не займёт более чем 30-40 строк  smile 


Автор: COVD 28.1.2009, 21:08
Решение, на мой взгляд, не связано с настройкой realm. Блокировка должна осуществляться в сервлете, который как раз лезет в realm за пользовательской информацией. В Томате это j_security_check . Именно в этом месте можно считать неудачные попытки и заносить адрес в черный список при достижении лимита. Мне казалось, что это должно быть стандартом. И именно на уровне контейнера, а не во фреймворках.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)