Я не уверен, каким должен быть наилучший опыт в этом случае использования: пользователь X входит в свою учетную запись с устройства A. Пользователь Y (или пользователь X) входит в учетную запись X с устройства B. Система обнаруживает вход с другого устройства. для уже зарегистрированной учетной записи.

Что теперь будет делать система?
– Выгнать первого парня, не сообщая об этом пользователю устройства B?
– Отображать предупреждение на обоих устройствах?
– Задайте обоим пользователям устройства секретный вопрос, чтобы узнать, кто прав, и разрешить этому парню войти?
- Что-то другое?

В конце концов, только 1 устройство может быть подключено к учетной записи. хотя я не уверен, как с этим справиться: если пользователь входит в учетную запись из Firefox, затем открывает Internet Explorer и входит в систему, IP / устройство такое же, так как это поймать?

0
Martin 11 Мар 2011 в 06:13

1 ответ

На ваш последний вопрос: если какая-либо структура, которую вы используете, поддерживает как хранилище на уровне сеанса, так и хранилище на уровне приложения, когда пользователь входит в систему, вы можете сохранить его «вход в систему» ​​как логическое значение в сеансе и хранить список имен пользователей в хранилище приложений. Если пользователь пытается войти в систему и присутствует в хранилище приложений, но не в хранилище сеансов, это дублированный вход из другого браузера. Однако обработка конца сеанса, когда пользователь явно не выходит из системы, является проблемой.

Что касается пользовательского опыта, это действительно зависит от вашей цели. В большинстве случаев я ожидаю, что смогу запускать одновременные сеансы без проблем, поэтому я могу расстроиться, если не смогу. Другим вариантом было бы сообщить устройству B, что у пользователя уже запущен сеанс, и он должен закрыть сеанс на устройстве A, прежде чем продолжить. Таким образом, если один и тот же пользователь находится на обоих, он имеет максимальный контроль. Если это разные пользователи, а на устройстве А есть действующая учетная запись, то он продолжает работать без перерыва. Если на устройстве B есть действительный пользователь, он знает, что его учетная запись была скомпрометирована. Вероятно, это его вина в том, что он небрежно ввел пароль, и ему нужна дополнительная помощь.

0
joelt 11 Мар 2011 в 06:37