IP-блокировка не подходит.
Рассмотрим группу пользователей внутри одного корпоративного брандмауэра.Когда они просматривают сеть, ВСЕ из них будут иметь одинаковый IP-адрес из-за прокси-сервера.Прокси-сервер отвечает за то, чтобы запросы / ответы доходили до нужных людей.
Итак, это не сработает.
То, что вы можете сделать, это привязать логины к сеансам и удалить их.предыдущие.По сути:
- Приходит запрос на вход.
- Сервер назначает этому запросу идентификатор сеанса, сохраняет его локально в этой пользовательской таблице и отправляет обратно в файл cookie.
- При каждом последующем запросе идентификатор сеанса проверяется, чтобы убедиться, что он все еще связан с пользователем.Если нет, выкиньте их на страницу входа в систему.
Что произойдет, если пользователь Bob войдет в систему и получит идентификатор сеанса 10. Bob начинает просмотр вашего сайта, и все в порядке.
Затем Сью входит в систему (с учетными данными Боба).Это назначает идентификатор сеанса 22 учетной записи bob.Она начинает просматривать сайт.
Самый следующий запрос, который Боб выдает, получает повторную проверку ... и сервер видит, что сеанс 10 больше не связан с Бобом.Boom: вылетело на экран входа в систему.
Боб снова входит в систему, почесывая голову.Это назначает новый идентификатор: 30. Следующий запрос от Сью пинает her на страницу входа.Веселье наступает.
Только для ударов, если несколько идентификаторов сеансов назначены одной и той же учетной записи в течение определенного периода времени (например, 2 минуты), отправьте сообщение на адрес электронной почты в файле, что их учетная запись, возможно, былавзломан.Потенциально можно даже закрыть учетную запись, попросив их подтвердить, нажав ссылку в сообщении электронной почты, что учетная запись исправна.Заставьте их сменить пароль прямо сейчас.
Две вещи произойдут.Во-первых, многие пользователи будут жаловаться (некоторые люди не стыдятся) ... обязательно получите хороший, но твердый ответ о том, как вы защищаете них с помощью этой новой необычной функции безопасности.Не сдвигайтесь с места.
Во-вторых, все эти анонимные пользователи получат свои собственные учетные записи (или уйдут).Причина в том, что выгнание с сайта только потому, что они поделились паролем, не очень хорошая вещь.Что, если я правильно понимаю, является желаемым поведением.
Интересно, что это дизайн похож на то, как работают некоторые компании, такие как GoToMeeting.Если учетная запись пользователя в настоящее время проводит совещание И тогда эта учетная запись входит в систему где-то еще, тогда исходное собрание прекращается.Довольно эффективно.