Как сделать недействительным сеанс пользователя, когда он дважды регистрируется с одинаковыми учетными данными

Я использую JSF 1.2 с Richfaces и Facelets.

У меня есть приложение с множеством bean-компонентов в сессионной области и некоторых bean-компонентов приложения

Пользователь входит в систему, скажем, с Firefox. Сессия создается с ID = "A"; Затем он открывает Chrome и снова входит в систему с теми же учетными данными. Сессия создается с ID = "B".

Когда сессия "B" создана, я хочу иметь возможность уничтожить сессию "A". Как это сделать?

Также. когда пользователь в Firefox делает что-либо, я хочу иметь возможность отображать всплывающее окно или какое-либо уведомление, говорящее: «Вы вышли из системы, потому что вы вошли в систему откуда-то еще».

У меня есть sessionListener, который отслеживает сеансы, созданные и уничтоженные. Дело в том, что я могу сохранить объект HTTPSession в bean-объекте области приложения и уничтожить его, когда обнаружу, что пользователь вошел в систему дважды. Но что-то подсказывает мне, что это неправильно и не сработает.

Отслеживает ли JSF сеансы где-нибудь на стороне сервера? Как получить к ним доступ по идентификатору? Если нет, как выкинуть первый вход в систему пользователя, когда он входит в систему дважды?

Ответы на вопрос(3)

Ваш ответ на вопрос