Насколько я знаю, невозможно аннулировать или удалить определенное (или несколько, скажем, на основе имени пользователя) Domino HTTP Session (s) (darn IMAP). Есть ли/что было бы подходящим обходным путем/механизмом для того, чтобы каким-либо образом отбросить/аннулировать сеансы HTTP-сервера Domino?Invalidate/Drop Domino HTTP Session?
Некоторые примеры случаев могут быть:
- же пользователем, две сессии, в одном из тех, пользователь изменяет HTTP Пароль (на данный момент все остальные сеансы должны быть немедленно признаны недействительными). Если он/она продолжает работать/просматривать в другом (браузере) сеансе (в какой-то момент), вы получаете сообщение «Ошибка аутентификации с использованием пароля интернета» на вашей консоли, и если вам не повезло, пользователь блокируется.
- Facebook-стиль; просмотрите текущие активные сеансы. Еще один шаг, если они видят подозрительный сеанс на основе IP/Location, давая им контроль за его недействительностью.
- Клиент звонит; «У меня такое чувство, что моя сессия захвачена». Первый ответ; «Вы умный пользователь, не так ли?». Впоследствии вы хотите удалить эти сеансы с этим именем пользователя (через консоль или веб-интерфейс «admin»).
- ...
Что вы пытались и что не сработало для вас? Для XPages вы можете использовать пользовательский PhaseListener (см. Http://devgrok.blogspot.cz/2009/07/access-control-using-phaselistener.html или http://www.jsftutorials.net/faces-config /phaseTracker.html). Вам также нужно будет обратиться к http://docs.oracle.com/javaee/1.4/tutorial/doc/JSFIntro10.html, чтобы вы могли точно знать, когда хотите выполнить свои проверки. –
Спасибо за комментарий. Мы действительно можем сохранить имя пользователя и инициализированный SessionID на скользящей карте и подтвердить эту карту на соответствующей фазе. Но дело в том, что сеансы все еще будут существовать на сервере. Случай 3, например; все необходимо, это активный (инициализированный) сеанс на сервере и созданный файл cookie DomAuthSessId для захвата сеанса. Таким образом, в этом случае (принятие желаемого за действительное), что нужно сделать; HttpSession.Destroy («user/sessionID») или что-то вроде; сообщите http drop session –
Dalie
Хотя ваш сценарий вполне реальный, на самом деле я не рассматриваю его как серьезный риск, предполагая, что вы уже применили все рекомендации по безопасности на своем сервере. Вы всегда можете отслеживать IP-адрес пользователя своего файла cookie. Вы всегда можете отключить веб-доступ ко всем базам данных на сервере, за исключением тех, которые вам нужно подвергать веб-пользователям. Вам не нужно, чтобы Domino Directory подвергался проверке подлинности пользователей. Вы всегда должны использовать SSL, чтобы предотвратить атаки MITM. –