Как сделать что бы один акаунт мог использоваться только с одного и того же устройства
Как сделать что бы один акаунт мог использоваться только с одного и того же устройства Есть сайт хочу ограничить возможность входа в него только определенным устройствам ( по ip не подойдет поскольку у некоторых они динамические). Сайт написан на php
Ответы (3 шт):
Попробуй добавить в ДБ новый столбик где например будет хеш рандомного числа (пример, можно хеш timestamp + соль(пароль пользователя)). И при авторизации хеш рандомного числа будет записывать в Cookie, и в строку с пользователям в БД. А потом проверять Cookie хеш рандомного числа и в строке.
Не совсем понимаю, зачем вам это нужно, но думаю что вам необходимо изучить вопрос цифрового отпечатка устройства (fingerprint)
Но вообще, это могут расценивать как нарушение конфиденциальности пользователя. Собрать фингерпринт браузера можно посредством js. Если не ошибаюсь, есть готовые библиотеки.
С ip,помимо той проблемы что описали вы, есть еще несколько. Например то, что с одного ip могут сидеть несколько разных устройств одного человека, или в принципе множество разных устройств. Например если все подключены к одному wifi.
Чтобы "всегда с одного и того же устройства" - это в принципе нереализуемо, и надо забыть про такие фантазии.
Всё что можно сделать - это разлогинить автоматом все остальные клиенты, если пользователь зашёл с нового клиента. И кстати правильно говорить именно клиент. Потому что про устройства веб-сервер ничего не знает, и обращается к серверу именно клиент, а не "устройство".
А лучше всего задать вопрос воими словами, не употребляя непонятных для тебя терминов - какую задачу хочешь решить и зачем