Вопрос

Мы реализовали систему, аналогичную описанной в этом другой так пост. Отказ По сути, если пользователь ничего не делает в течение 14 минут, мы подскажем им, что они будут вытеснены. Если они нажимают на «Держите меня войти в систему», мы выполняем запрос AJAX, чтобы сохранить их заседание, иначе они перенаправлены на страницу выхода в систему через минуту.

Он работает довольно хорошо, и входит в соответствии с аналогичными системами, используемыми на таких сайтах, как mint.com и bankofamerica.com. Единственная проблема заключается в том, что пользователи нашего приложения имеют тенденцию иметь несколько вкладок, открытых для обозначения и далее на разные данные. Таким образом, проблема в том, что они могут активно работать на одной вкладке, но затем остальные вкладка раз входят и выходит из системы. Это вызывает резюму тайм-аут сеанса для пользователя, когда они не ожидали этого. BTW, Mint.com имеет такой же вопросом.

Поэтому мне было интересно, если у кого-то есть идеи для борьбы с этим?

У меня есть одна идея, каждый запрос может установить файл cookie "последнего активного времени". После автоматического выхода сервер может проверить это последнее активное время, и если это относительно недавнее, избегайте регистрации их. Ручной выход из системы, конечно, будет игнорировать это cookie, поэтому, если пользователь хочет выйти из системы, он может сделать это в любое время. Тем не менее, я боюсь, что это может воздействовать какой-то риск безопасности, который я не могу видеть на этом этапе. Мысли?

Это было полезно?

Решение

Прежде чем показывать всплывающее окно, спросите сервера, как давно пользователь проделал свой последний запрос.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top