[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Вопрос по безопасности!
GakMan
И так.
у нас есть 3 переменных: логин, пароль, ид.

Пользователь производит авторизацию на сайте(указывает логин и пароль) система присваивает переменной $id= его уникальный код из базы.
если код не присвоен, то пользователь не авторизован и не может оставлять коментарии и т.д.

вопрос: как лучше поступить?
1) хранить логин и пароль в сесии и на каждой странице производить запрос к базе.
2) Хранить в сесии ид пользователя, и просто запрашивать из сесии его каждый раз?

Безопасен ли второй вариант?
vagrand
Хранить в сессии id и уникальный для каждой авторизации хеш и уже по ним проверять.
Хотя это актуально для cookies, если имеются ввиду именно файлы сессий, ну или где вы там их храните, то можно обойтись и одним id.

_____________
Senior PHP developer: PHP5, MySQL, JavaScript, CakePHP, Yii/Yii2, Zend Framework, Smarty, XML/Xslt, JQuery, Jquery Mobile, Bootstrap, ExtJS, HTML, HTML5, CSS, Linux, SVN, Git, Memcached, Redis, MongoDB, Zend Guard, Ioncube, FFMpeg, PayPal, Webmoney, Qiwi, Facebook API, Vkontakte Api, Google API, Twitter Api, Steam Api.
Junior Android Developer: Android SDK, многопоточность, работа с HTTP запросами, JSON, SQLite, фрагменты.
GakMan
Цитата (vagrand @ 1.10.2014 - 17:44)
Хранить в сессии id и уникальный для каждой авторизации хеш и уже по ним проверять.
Хотя это актуально для cookies, если имеются ввиду именно файлы сессий, ну или где вы там их храните, то можно обойтись и одним id.

да именно файл сесии, я просто в вопросах безопасности слаб. Подскажи еще, может ли юзер каким то Раком переназначить переменную ид в сесии?!(чисто теоритечески и как этого избежать)
bestxp
то что в сессии хранится нет ( данные внутри их хранятся на сервере )

а вот саму сессию легко, угнав её у другого пользователя, поэтому в сессию нужно засунуть контрольную информацию

например UserAgent, ip и в случае изменения просить авторизоваться
GakMan
Цитата (bestxp @ 1.10.2014 - 18:24)
то что в сессии хранится нет ( данные внутри их хранятся на сервере )

а вот саму сессию легко, угнав её у другого пользователя, поэтому в сессию нужно засунуть контрольную информацию

например UserAgent, ip и в случае изменения просить авторизоваться

спасибо, контрольную информацию генерировать случайно? или какие есть хорошие варианты, если можно скинь скриптик!
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.