Уникальная идентификация браузеров с постоянным уникальным идентификатором - PullRequest
0 голосов
/ 27 мая 2019

TL; DR Как различить, если два одинаковых браузера (например, FF версии X) уникальны (возможно, с постоянным уникальным идентификатором), даже если браузеры работают на отдельных устройствах, но с одинаковымаппаратное обеспечение (например, 2 One Plus 6T с одинаковой конфигурацией).


Длинная версия

СЦЕНАРИЙ

Я реализовал аутентификацию пользователя с использованием JWT в REST API, и все работает нормально.В моем приложении всякий раз, когда пользователь входит в свою учетную запись, имя устройства, идентификатор JWT и токен обновления сохраняются в БД относительно этого пользователя.Токен доступа сохраняется в файле cookie, если имя входа с веб-сайта и если оно из нативного приложения, оно сохраняется в безопасном хранилище.

В настоящее время, когда выполняется новый вход в систему, новая запись для устройства добавляется каждый раз.И всякий раз, когда пользователь выходит из системы, я очищаю запись из БД.Тогда, если я сделаю запрос в БД, я могу получить список подключенных устройств.

ВЫПУСК

Но как мне управлять следующими случаями:

  • Пользователь удаляет cookie вручную избраузер или очищает данные приложения / кэш приложения и затем снова входит в систему.
    Тогда запись все еще будет существовать в БД для предыдущего входа в систему и при запросе БД я получудополнительное устройство в списке, которое в основном является тем же устройством.

  • Пользователь входит в систему из браузера, но в режиме инкогнито

МОИ НАЧАЛЬНЫЕ МЫСЛИ

Всякий раз, когда пользователь вошел в первый раз с определенным браузером, получите / рассчитайте уникальный идентификатор для браузера, который не должен изменяться при обновленияхи сохраните этот идентификатор вместе с именем устройства и выданными ему токенами.Последующий запрос входа в систему после очистки файлов cookie также должен генерировать тот же идентификатор, который я могу использовать для обновления сведений о токене в БД для соответствующего браузера.

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

Итак, мой вопрос заключается в том, как Google и некоторые основные веб-приложения обрабатывают список подключенных устройств и есть ли способ, которым мы могли бы это реализовать?

Любые идеи или предложения будут действительно полезны.

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