Как предотвратить множественный вход пользователя с тем же именем пользователя и паролем?

Я разрабатываю безопасную систему входа с php. Я хочу предотвратить множественный вход для пользователя с одинаковым именем пользователя и паролем. С моим скриптом пользователь может войти в систему с учетной записи из разных браузеров или с разных IP-адресов с одинаковым именем пользователя и паролем. Мне нужно добавить несколько столбцов в мою базу данных. Когда пользователь регистрируется в поле, он становится 1, а учетная запись заблокирована, когда пользователь выходил из учетной записи, разблокируется. Но что делать, если пользователь закрывает браузер без выхода из системы?

Solutions Collecting From Web of "Как предотвратить множественный вход пользователя с тем же именем пользователя и паролем?"

Вы можете установить случайную соль при входе в систему и сохранить ее в базе данных и в cookie в пользователе.

При каждом входе вы создадите новую случайную соль и сохраните ее в базе данных (заменив предыдущее значение) и в cookie для текущего пользователя.

Для каждого действия на вашем сайте вы будете проверять не только сеанс, но и соль, если соль в сеансе пользователя отличается от текущего пользователя – это означает, что кто-то вошел в систему после него с теми же учетными данными, и вы сделаете недействительным текущей сессии. Таким образом, у вас будут необходимые функции, и у вас не будет проблем с тем, что пользователи не выходят из системы, потому что каждый раз, когда пользователь регистрируется в нем, это приведет к аннулированию всех других пользователей, входивших в систему, с теми же учетными данными.