ASP.NET FormsAuthentication эксклюзивный вход - PullRequest
1 голос
/ 28 января 2010

Я работаю на веб-сайте, где я получаю фид имен пользователей / хэшированных паролей от другого сервиса. Когда кто-то успешно входит в систему, я устанавливаю cookie для аутентификации форм с помощью FormsAuthentication.SetAuthCookie .

Мой клиент не любит, когда несколько человек входят в систему с одинаковыми учетными данными. Они хотели бы войти в систему, чтобы сделать недействительными любых зарегистрированных в настоящее время клиентов.

В FormsAuthentication отсутствует метод, позволяющий серверу «аннулировать любой другой файл cookie под этим именем». KB900111 предполагает, что сервер не поддерживает список допустимых файлов cookie. Так что мой подход звучит не очень хорошо.

Какая альтернатива? Время угробить формы аутентификации?

1 Ответ

0 голосов
/ 28 января 2010

Не обязательно. Аутентификация с помощью форм по-прежнему предоставляет довольно много встроенных функций, которые вам могут понадобиться. Может быть, вы можете сгенерировать и выдать Guid при первом входе каждого пользователя в систему и сохранить его на стороне сервера и в cookie-файле (желательно, защитном билете). Каждый раз, когда делается запрос, вы проверяете, чтобы убедиться, что пользователь использует не только правильные учетные данные, но и тот же компьютер и браузер (на основе файла cookie, который вы выдавали пользователю при входе в систему). Вы, конечно, должны убедиться, что срок действия вашего Guid истекает в какой-то момент, а также убрать его, когда пользователь выйдет из системы.

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