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

Здравствуйте уважаемые программисты. Нужен совет.
При таком коде авторизации пользователя, если настроен автовход:
if($_SESSION['ID'] == '0'){

  if(isset($_COOKIE['autoenter'])){  
  $user_sql = $sql->run("select id,username,rating,ava_url from `".users` where `username` = ? and id = ?",array($_COOKIE['login'],$_COOKIE['id']));
  $Rows = $user_sql->fetch();
  $_SESSION['ID'] = $Rows['id'];
  $_SESSION['username'] =  $Rows['username'];
 
  }

  }

можно же запросто подменить куки любого юзера и войти под его учеткой? Правильно я мыслю?
Если так, то подскажите, пожалуйста, как лучше доработать это дело , чтобы было безопасно.
  • Вопрос задан
  • 190 просмотров
Решения вопроса 1
ipatiev
@ipatiev Куратор тега PHP
Потомок старинного рода Ипатьевых-Колотитьевых
Очень правильный вопрос. Разумеется, с таким подходом зайдет кто угодно.

поэтому надо в таблицу users добавить поле autoenter, и если пользователь выбирает автологин, то в него записывать значение bin2hex(random_bytes(16)); и его же записывать в куку.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы