Такой вопрос. Безопасно ли записывать в сессии относительно важные данные из БД по аккаунту пользователя, которые ему (этому пользователю) знать не нужно? Просто в уроках, по которым я делаю, все записывается в сессии, а я тут подумал.. может ли, теоретически, пользователь как-то найти в своем браузере эти данные по его аккаунту? Если да, то как с этим бороться? Желательно, без шифрования этих данных. Чтобы он и не знал, что есть что-то, что от него скрывают =) Неужто нужно каждый раз при обновлении страницы брать их из БД? В интернете ничего конкретного по моему вопросу не нашел. Просто даже не знаю, как это загуглить.
на сервере создается файл где хранятся все эти данные, а у пользователя в браузере в куках хранится только лишь ID сессии по которому находится именно этот файл (возможно имя файла совпадает с этим ID).
Сессии - это хорошо. Но лучше действительно почитать подробней, что нужно сделать, чтобы появилась некоторая безопасность. и т.д.
Там данные информационного характера, но знать их не желательно. Но спасибо, и правда есть что почитать.
дело не в том, какие там данные. А в том, что их можно будет поменять втихую себе, в некоторых случаях. Назначить себя админом, даже не трогая бд, например.
Код (PHP): public static function is() { static $is; if($is) { return $is; } $is=($self=self::$self) && ($id=$self->sess('id')) && self::check($id) && $self->sess('ip')==self::ip() && $self->sess('agent')==self::agent(); return $is; } Код (PHP): if(user::is()) { //..... } Как - то так, нужно максимально верифицировать. Про админа уже тут немного сложнее, тут нужно сделать вход + права проверить.
лехко! ))) в любом браузере есть "инструмент разработчика" где можно заглянуть в куки странички. но ничего интересного там не увидишь. ид сессии - это как бы "индекс в массиве данных", а не сами данные. опасность в том, что эти тупые строчки могут быть скопированы javascript-ом и кто-то может попытаться выдать себя за тебя. то есть JS-инъекция делает уязвимыми сессии в том числе. другой вариант провала это когда кто-то получает возможность читать файлы из папки с сессионными файлами. вот этого не надо этого бояться. Добавлено спустя 8 минут 50 секунд: [оффтопик] Господа модераторы! Наш раздел "Программирование на PHP" лишний! Остальные разделы как-то более-менее структурируют информацию, а сюда попадают темы, которым место в "PHP для новичков". В конце концов, если автор затрудняется выбрать раздел, есть "Прочие вопросы по PHP". Но этот раздел просто ни о чём! 100% энтропия. Предлагаю его снести, а темы вывалить в "новичков". [/оффтопик]
ну фик знает. Может это просто потому что кроме новичков тут никто не создаёт темы, а старожилам спрашивать нечего? =(