Обычно, когда я создаю сайт, который позволяет пользователям входить в систему, я создаю переменные сеанса информации о пользователе из базы данных и гарантирую, что по крайней мере одна из переменных сеанса доступна на каждой странице сайт, в противном случае пользователь будет перенаправлен на страницу входа в систему, как это:Использовать строку запроса URL-адреса для аутентификации в PHP
if(!isset($_SESSION['username']))
{
header("Location:login.php");
}
Но тогда я думал в последнее время, вместо того чтобы использовать переменные сессии для аутентификации пользователей, почему бы не использовать строку запроса. Моя идея заключается в том, чтобы создать уникальную строку, которая основана на некоторых факторов, таких как date(month, year, day)
или access time(day, hour)
или ip address
, и, возможно, hash
его с помощью md5
поэтому URL может выглядеть следующим образом
://mysite.com/dashboard?auth=12jsdnnau819wiskj3jdnck23ksj12j3
.
Теперь я могу легко выйти из системы, если он не обратился к сайту более одного часа или более одного дня. Но я не знаю, является ли это хорошей идеей, поэтому я здесь, чтобы искать совета по лучшему пути. Спасибо всем.
И почему бы не просто сохранить временную метку доступа в качестве переменной сеанса? – Carlos
Почему бы не использовать политику истечения срока действия сеанса? Внутри веб-сеанс поддерживается аналогичным образом - либо с идентификатором сеанса, переданным на запрос, либо с файлом сеанса, хранящимся в браузере. –
Нет, это не очень хорошая идея. И что это связано с регистрацией пользователя? – CBroe