Задать вопрос
@vvsh

безопасная авторизация без учета айпи

доброй ночи.
пометка: нужна авторизация без учета айпи (twitter, facebook пример, насколько мне известно там не выкидывает при смене айпи)
перечитав несколько статей не смог найти выход.
авторизация:
есть несколько способов
способ 1:
юзер вводит логин и пароль, пароль хэшируется на стороне клиента, отправляется на сервер, проверяются данные, если все ок генерируется случайное значение, хэшируется, или даже не случайное а айди сессии и пишется в сессию.
способ 2:
при генерации формы генерируется случайное значение пишется в hidden и в базу, юзер снова вводит логин и пароль, пароль хэшируется, потом хэшируется вместе с доп значением и отправляется на сервер там проверяется и снова пишется значение в куки.

теперь функция запомнить мои данные на этом компьютере.
тут начинаются проблемы, если поступать теми двумя способами и проверять при открытии юзером сайта значения (сравнивать куку с базой) то можно украсть куку и авторизироваться. Какой придумать выход?
спасибо
  • Вопрос задан
  • 4456 просмотров
Подписаться 2 Оценить 1 комментарий
Пригласить эксперта
Ответы на вопрос 6
@petrovi4
Ой, кажется мне вы очередной велосипед изобретаете.
При логине отправляйте логин и пароль на сервер (используйте https чтобы не было перехвата), формируйте sessionId и пусть пользователь ходит по вашим страницам/запрашивает сервисы с этим Id.
Ответ написан
Хэшировать различные заголовки браузера (user agent, accept * и т. д.) — невелика подстраховка, но всё же лучше чем ничего.
Ответ написан
sajgak
@sajgak
вот в принципе описан не плохой вариант в песочнице
Ответ написан
Комментировать
splatt
@splatt
Если не делать проверку ip, всегда есть вероятность, что украдут куки. Единственный выход — стопроцентный SSL и быть на 100% уверенным, что на сайте нету XSS.
Я бы посоветовал, как уже писали выше, сделать проверку IP по желанию пользователя.
Ответ написан
taliban
@taliban
php программист
Ответ написан
Комментировать
seriyPS
@seriyPS
Есть вариант независимую от IP куку держать на одном домене, зависимую от IP на другом основном. В случае смены IP у пользователя делать кроссдоменную авторизацию. Вконтакие так делают. Как реализовать смотрите, например, в докладе Ильи Кантора addconf.ru/event.sdf/ru/add_2010/authors/136/174
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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