Ну, самое простое - запоминать где-то, с каких IP-адресов приходят запросы каждого аккаунта. Хранить несколько таких пар. Если ваша служба поддерживает пользовательские сеансы - то хранить сочетания <DateTime - Login - IP> для нескольких сеансов, если служба уровня вызова - то для нескольких вызовов.
И анализировать - не использовался ли данный IP для других аккаунтов в течение последнего времени (скажем, последних суток).
В смысле, вы полагаете, что один пользователь в разные аккаунты будет заходить с разных VPN-адресов?
Т.е. вам нужно придумать, на какое событие повесить запуск такой проверки?
Ну, смотрите, можно при старте сессии запускать проверку - были ли сессии с такого IP с другим логином? Если было - можно запрещать сессию. А можно просто ставить флажок - проверить вот такой логин или вот такой IP. Чтоб потом уже модераторы вручную проверяли и думали.
Другой вариант - запускать подобную проверку отдельным фоновым процессом. Т.е. просто периодически запускать запрос, выдающий вам подозрительные аккаунты - на которые можно поставить флажки или запрет подключения. Скажем, раз в сутки делать такую проверку на подозрительные совпадения за последние три месяца.
Лига программистов
2.3K постов12K подписчика
Правила сообщества
- Будьте взаимовежливы, аргументируйте критику
- Приветствуются любые посты по тематике программирования
- Если ваш пост содержит ссылки на внешние ресурсы - он должен быть самодостаточным. Вариации на тему "далее читайте в моей телеге" будут удаляться из сообщества