Получить HttpSession/Request в модуле входа в систему JAAS

Я пытаюсь получить HttpSession или Request в моем модуле входа. Я уже попробовал JACC, но это не сработало.

Мне это нужно, потому что я должен поставить капчу в окне входа в систему. Может быть, какой-нибудь ниндзя JAAS знает лучший способ сделать это. Я использую капчу, чтобы сделать это.

заранее спасибо.

1 ответ

Я делаю именно это в своих приложениях, работающих на JBoss AS.

Вот что я делаю, чтобы получить доступ к HttpServletRequest из модуля входа в систему:

HttpServletRequest request = (HttpServletRequest) PolicyContext.getContext(HttpServletRequest.class.getName());

Затем я получаю сессию, извлекаю капчу и проверяю ее по параметру запроса с экрана. После аутентификации пользователя я удаляю параметр captcha из сеанса. Это прекрасно работает для меня.

Обратите внимание, что модуль входа в систему также может быть активирован вызовами EJB после того, как пользователь уже аутентифицирован. В этом случае параметр captcha не будет в сессии, конечно. Так что вы должны это проверить.

Другие вопросы по тегам