Как я могу заблокировать пользователей после 3 неудачных попыток входа в систему с помощью JOSSO? - PullRequest
0 голосов
/ 22 ноября 2011

Я работаю над проектом, в котором реализована реализация JOSSO.

Мы используем JOSSO версии 1.8.5.

Требуется заблокировать пользователей из системы после 3неудачные попытки входа в систему.

Кто-нибудь знает, как / если это можно сделать с помощью JOSSO, я просмотрел документацию, но не могу найти никаких ссылок на этот тип функций, но я уверен, что это должно быть довольностандартная функциональность для приложения аутентификации?

Что мы пробовали до сих пор: - в josso-gateway-db-stores.xml мы пытались изменить SQL, используемый для извлечения пользователей из базы данных из:

credentialsQueryString="SELECT username AS username , password AS password FROM users WHERE username = ?"

до

credentialsQueryString="UPDATE users SET failed_login_attempts = failed_login_attempts + 1 where username = ?; SELECT username AS username , password AS password FROM users WHERE username = ?"

План состоял в том, чтобы затем сбросить счетчик, как только пользователь успешно вошел в систему.Однако на этом этапе недопустимо запускать UPDATE sql и выдает исключение.

Мы также просмотрели приложение josso, чтобы попытаться найти хуки, которые можно использовать для реализации функции обратного вызова после успешного / неудачного входа в системуК сожалению, здесь тоже не повезло.

У кого-нибудь есть опыт в этом?

1 Ответ

0 голосов
/ 26 марта 2012

Посмотрите на JOSSO authenticatorImpl, который может быть унаследован для подсчета количества попыток заблокировать учетную запись в хеш-таблице timeboxes, если это необходимо.

...