Поддерживается ли отключение пользователей изначально с помощью плагина Acegi Grails?
Из документации видно, что он поддерживает поле «enabled». Но после установки поля «enabled» Users в значение false, пользовательвсе еще может войти в систему, и исключение «пользователь отключен» не генерируется (хотя в контроллере входа по умолчанию, по-видимому, есть перехват для отключенного пользователем исключения) ...
Если эта функция поддерживается, есть ли другие изменения?нужно, кроме установки для поля «enabled» пользователей значения false?
Понимая, что это может не поддерживаться, я добавил проверку в контроллер входа в систему, чтобы проверить, включен ли пользователь, когда пользователь вошел в систему иотправка их обратно на экран входа в систему с отключенным сообщением ...
def index = {
if (isLoggedIn()) {
def dc = authenticateService.principal().domainClass
def user = User.get( dc.id )
if (!user.enabled){
session.invalidate()
flash.message = "User '"+user.username+"' is disabled."
redirect action: auth, params: params
}else{
setLoginDate()
redirect uri: '/home/'
}
}
Однако это работает, только когда я получаю доступ к странице входа напрямую.Когда я пытаюсь войти после ввода URL (например, * / user / list) из приложения;пользователь входит в систему и получает URL, не вызывая мой чек в logincontroller ...