Лучший способ проверить, работает ли у пользователя два экземпляра сайта - PullRequest
1 голос
/ 10 февраля 2011

У меня есть некоторые идеи по этому поводу, но они очень простые и неполные. Интересно, как лучше всего проверить, зарегистрирован ли один и тот же ПК / IP двумя разными пользователями и работает ли два экземпляра моего сайта?

Ответы [ 3 ]

2 голосов
/ 10 февраля 2011

Если два пользователя имеют одинаковый IP, они либо

  • на том же компьютере
  • в том же доме, офисе или компании с общим подключением к Интернету
  • в том же интернет-кафе

это так далеко, как вы можете получить. Надежно определить, находятся ли два сеанса на одном компьютере , практически невозможно, так как нет метрики, которая могла бы вам помочь.

Если вы хотите бороться с мошенничеством, вам придется использовать разные методы.

1 голос
/ 22 июля 2011

Сначала , пусть сервер отправляет уникальный токен (например, csrf token ), когда страница загружается и каждый раз, когда пользователь взаимодействует.Затем, пусть каждое взаимодействие с пользователем (публикация или запрос) включает этот токен (и генерирует новый).

Когда вы получаете неожиданные токены с того же IP-адреса, вы применяете второй трюк: добавьте временные метки mousevent к запросу и запишите (с точностью до миллисекунды) разницу во времени (далее dt ) между временем локального сервера и временной меткой, поставляемой с токеном, с определенной погрешностью для вариациив задержке.

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

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

0 голосов
/ 10 февраля 2011

вы можете проверить ip-адрес, user-agent, часовой пояс, активированные плагины ... Чтобы избежать входа нескольких пользователей с одного компьютера, вы можете устанавливать куки или передавать сеансовый ключ по каждой ссылке.(вы должны объединить хеш с ip-адресом, который пользовательская информация, которую вы получаете из-за копирования ссылки, не должна регистрировать других пользователей в той учетной записи, к которой принадлежит хеш)

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