Как управлять идентификацией пользователя через Javascript? - PullRequest
1 голос
/ 11 января 2012

Я запускаю SaaS , который позволяет бесплатные пробные версии.В основном, если вы регистрируетесь, вы сразу получаете бесплатные услуги на несколько долларов.Я определяю новых пользователей, основываясь только на IP-адресе, и он хорошо работал в течение первых нескольких месяцев.Теперь люди, наконец, понимают, что легко изменить свой IP-адрес и выманить меня из бесплатных пробных бонусов.

В основном я хочу создать хэш всех возможных переменных браузера javascript и сохранить его.в базе данных MySQL.

Если я заметил, что тот же самый хэш браузера подписался на бесплатную пробную версию 10 из предыдущих 100 регистраций ... Я не включу бесплатный пробный бонус для этой учетной записи.

С чего мне начать?(Где я могу найти список всех настроек переменных браузера javascript, таких как размер окна, операционная система, номер браузера и версии, страна, язык и т. Д.? Или jquery уже предлагает что-то подобное?)

IЯ думал о внедрении проверки телефона с помощью twilio ... но это стоило бы мне денег, стоило бы денег моим пользователям и в конечном итоге привело бы к меньшему количеству бесплатных пробных версий.

РЕДАКТИРОВАТЬ: ЦЕЛЬ СУЩЕСТВУЕТ ОГРАНИЧИТЬ МОДУЛЬНУЮ ДЕЯТЕЛЬНОСТЬСКОЛЬКО ВОЗМОЖНО, И НЕ ЗАПРЕЩАЕТСЯ РЕАЛЬНОЙ ДЕЯТЕЛЬНОСТИ В САМОГО САМОГО САМОГО САМОГО!

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

Ответы [ 4 ]

4 голосов
/ 11 января 2012

Что вы можете сделать, это взглянуть на отпечатки пальцев браузера http://panopticlick.eff.org/

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

Обновлено
Если идея заключается в ограничении мошеннической активности, я бы реализовал код на основе SMS, аналогично тому, как работает Gmail. Вы должны ввести свой номер мобильного телефона, чтобы получить бесплатный след. Если вы покупаете SMS-сообщения оптом, вы сможете получить их примерно по 2 пенсов за каждый, и это легко сделать, просто найдите поставщика SMS с API.

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

2 голосов
/ 11 января 2012

Это действительно ненадежно .

Проблема

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

Та же проблема, когда вы сохраняете данные сессии / куки - куки могут быть очищены (а куки обычно хранят идентификаторы для сессий).

Решение

Проблема, с которой вы столкнулись, может быть решена, вероятно, только с помощью регистрация - вы можете максимально упростить это, используя OAuth и позволяя людям регистрироваться, используя свои существующие учетные записи из другие провайдеры (Google, Facebook, Twitter, Linkedin и т. д.)

0 голосов
/ 29 июля 2013

Рассматривали ли вы внедрение капчи? Это не будет сдерживающим фактором для пользователей, желающих создать несколько учетных записей вручную, но определенно победит ботов, создающих сотни учетных записей за считанные минуты. Мне нравится recaptcha: http://www.google.com/recaptcha, это бесплатно, оно предлагает решения для людей с нарушениями зрения и помогает оцифровывать книги.

0 голосов
/ 11 января 2012

Вы пытаетесь однозначно идентифицировать человека в javascript. Это то, что, как правило, невозможно сделать в Интернете - отчасти по замыслу, чтобы сохранить анонимность. Лучшее, что вы можете здесь сделать - это установить cookie и проверять cookie, когда пользователь пытается изменить свой IP-адрес. Они всегда смогут очистить свои куки, но это все, что вы можете сделать.

...