Вы должны сгенерировать идентификатор сеанса, а затем сохранить его в базе данных и присоединить его к идентификатору пользователя. Таким образом, вы узнаете пользователя по его идентификатору сеанса, когда он перемещается по веб-сайту / программному обеспечению.
Вы также можете записывать такие вещи, как их IP-адрес, информацию о браузере и время доступа, чтобы сделать его немного более безопасным - и хакеру будет сложнее перехватить информацию о сеансе.
Кроме того, единственное, что я должен упомянуть, это то, что вы не должны хранить личную информацию в данных сеанса. Например, не храните идентификатор своей учетной записи в переменных сеанса или их пароль / адрес электронной почты / имя пользователя / и т. Д. Можно изменить данные сеанса и получить доступ к другим учетным записям, если вы полагаетесь на сами данные сеанса, чтобы сообщить вам, кто является пользователем. Зашифрованные / рандомизированные идентификаторы сеанса могут быть настолько уникальными, что для пользователя почти невозможно разумно обмануть ваш сервер, думая, что это другая учетная запись. Вот почему мы храним их в базе данных с дополнительной информацией вместо установки других переменных сеанса.
Пример:
В PHP мы могли бы использовать session_id (), но также хранить такие вещи, как $ _SESSION ['setting'] или $ _SESSION ['theme_choice'] и другие тривиальные настройки, чтобы избежать необходимости искать его в базе данных на каждой странице. нагрузка.