Влияние SSO на время ожидания сеанса - PullRequest
2 голосов
/ 30 апреля 2009

Мне нужно реализовать единый вход между доменом Windows и веб-приложением J2EE.

Я думал, как это повлияет на время ожидания сеанса веб-приложения. У нас 2 часа.

Если мы реализуем единый SSO, я думаю, это может сбить пользователя с толку.

Служба единого входа покажет, что веб-приложение немедленно доступно.

Я волнуюсь, что они начнут заполнять формы, затем пойдут на обед (или что-то в этом роде) и вернутся после того, как время их сессии истекло. Однако, это может быть не сразу очевидно, что это произошло, поскольку SSO просто подпишет их снова (но теперь с новым сеансом).

У кого-нибудь есть опыт с чем-то подобным и как с этим справиться? Нужно ли нам просто внедрить какую-то форму дополнительного обмена сообщениями, чтобы сообщить пользователю, что время его предыдущего сеанса истекло, а его работа потеряна?

Ответы [ 3 ]

1 голос
/ 30 апреля 2009

Я думаю, что вам обязательно нужно вспомнить окно оповещения, если сеанс пользователя сбрасывается. Заставьте их щелкнуть OK в сообщении и перенаправить их на домашнюю страницу.

Кроме того, я думаю, что двухчасовой тайм-аут звучит как плохая идея, если вы делаете это так, как я думаю. Вы имеете в виду, что у пользователя есть 2 часа с момента входа на работу до истечения времени его сеанса? Разве не имеет смысла иметь что-то вроде 10-минутного тайм-аута, но с таймером сбрасывается всякий раз, когда пользователь отправляет новый запрос в этом сеансе.

0 голосов
/ 19 марта 2015

Старый вопрос, но в случае, если кто-нибудь столкнется с ним:

Старайтесь изо всех сил не хранить состояния в сеансе сервера. Клиент, хорошо; Постоянство внутреннего сервера (например, базы данных), хорошо. Просто ничего между этим не потеряно. Когда пользователь проходит повторную аутентификацию, он не замечает переключения. Продолжительность тайм-аута становится неактуальной.

Этот ответ на самом деле более выполним сейчас, спустя шесть лет, поскольку есть несколько интерфейсных сред, которые будут хранить ваши данные для вас. Вы все еще можете использовать Spring Security (скажем) на сервере, поскольку аутентификация все еще там с новым сеансом; он должен восстанавливать вашу информацию о безопасности (SecurityContext, UserDetails и т. д.) на лету. Какой бы запрос ни получал или отправлял данные, он должен "просто работать".

0 голосов
/ 30 апреля 2009

Тайм-аут - это не статическое фиксированное время, измеренное при входе в систему, а скорее динамическая мера неактивности.

На сайтах, на которых мы работали с этой функциональностью примерно через 10 минут, веб-страница возвращается на страницу входа (используется JS), и пользователь может начать снова, если он хочет.

Если они заняты длительным процессом, когда они просматривают результаты или что-то в этом роде, проверьте движение мыши или какую-либо другую клавишу sublte, например, указав, что они все еще заняты.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...