Я использую JDBCRealm + LockOutRealm в Tomcat (8, но может переключиться на 9).Это работает нормально, но если пользователь блокирует себя, это видно только в журналах, а не у пользователя, сталкивающегося со страницей ошибок входа в систему.
Представьте, что пользователь вводит свой пароль с помощью заглавных букв на несколькихраз, поэтому блокируя учетную запись, затем замечая блокировку caps, удаляя ее и все еще не имея возможности войти.
Есть ли способ показать, что причиной является LockOutRealm, а не неправильный парольдля неудачного входа в систему?
Я вижу это только в catalina.out:
Aug 24, 2018 10:59:15 AM org.apache.catalina.realm.LockOutRealm authenticate
WARNING: An attempt was made to authenticate the locked user "abcd"
Aug 24, 2018 10:59:15 AM org.apache.catalina.authenticator.AuthenticatorBase invoke
FINE: Failed authenticate() test ??/test/j_security_check
Я нашел этот ответ , который ИМХО является единственнымсвязанный ответ в области.Но это с 2011 года, и сейчас может быть лучший и более простой способ сделать это.
Кроме того (гораздо менее важно), есть ли способ разблокировать пользователя из учетной записи приложения / сбросить LockOutRealm, например, с помощьюдоступ к некоторому защищенному сервлету, который делает это, с учетной записью администратора?Существует метод unlock () , но, похоже, он не предназначен для использования из приложения, см. здесь .