У меня есть ресурс, функционал которого зависит от верного определения местоположения авторизованного пользователя (с точностью хотя бы до 5 км).Некоторые пользователи хотят скрыть свое местоположение, используя разные инструменты для анонимизации, которых может быть очень много. В случае использования мобильного устройства или планшета, более-менее понятно: верное местоположение возможно по запросу GPS/ГЛОНАСС, а один из способов борьбы с fake gps, это внедрять ПО, которое будет выявлять использование данных программ по черному списку, и запрещать использование сервиса при включенном fake gps. Какие ещё есть способы и как можно выявить использование анонимайзеров для стационарных пк обычному владельцу сайта, без каких-либо крупных затрат и сложных способов, доступных только спецслужбам? Какие данные следует запрашивать, и как убедится что они верные, а не подложные? В сети много воды на эту тему, а конкретных решений нет. Например, читал про комбинацию запроса данных GEO API и использование данных вышек сотовой сети, которые вместе как раз позволяют определить примерное местоположение в небольшом радиусе. Это подойдёт для правильного функционирования моего ресурса, как это выглядит? Необходима авторизация по смс, понадобятся ли соглашения с операторами или провайдерами, или как? Хотелось бы узнать конкретные решения, чтобы ограничит доступ тем, кто хочет обмануть систему, или таких решений нет, или это какая-то платная информация, для топ-компаний от топ-агентств по кибер-безопасности? Скажите простым людям :)
У любого решения есть погрешность при определении местоположения.
Можете использовать API Google (ссылка) совместно с другими скриптами. Координаты из браузера можно вытащить так. Посмотрите готовые решения сервисов типа LPTracker, Jivosite и их API. Используйте определение приблизительного местоположения по IP: например, GET-запрос на http://ip-api.com/json/?fields=city покажет ваш город.
Для повышения точности можно комбинировать разные подходы, дополнительно использовать данные ОС - локаль, язык и другие данные, которые можно получить из браузера (пример).
Но, как я сказал вначале, 100% точности вы не получите, и тот, кто захочет обмануть систему, скорее всего обманет. Некоторые интернет проеты онлайн-игр постоянно борются с игроками из других стран, тратят большие бюджеты на это, но кто хочет, тот все равно играет.
↓ Поддержите лайком, если помог советом.