JohnSparrow
Новичок
Автоматическая авторизация пользователей с помощью cookies
Преамбула:
1) Пользователь ввел логин и пароль, включил опцию "сохранять логин и пароль" (или "автоматичский вход", неважно) и нажал кнопку "Войти".
2) Сервер выяснил, что такой пользователь существует и теперь надо обеспечить автоматический вход.
3) Сервер записал в cookie, например, ID пользователя (предположим, зашифровал его с помощью функции обратного шифрования).
4) В следующий раз при входе сервер проверил наличие такого cookie и загрузил данные пользователя автоматически.
Амбула:
1) Плохой дядя зарегистрировался на сервере и выяснил имя cookie с ID пользователя.
2) Плохой дядя создал свой сайт с похожим названием (например, phpklub.ru,
).
3) После входа пользователя на поддельный сайт сервер сайта считал cookie, принадлежащее оригинальному сайту и сохранил его.
4) Плохой дядя методом прямого редактирования сделал на своем компьютере cookie с указанным выше именем и данными другого пользователя.
5) Плохой дядя автоматом загрузился на оригинальный сайт и что-то сделал.
Я в PHP новичок, потому не судите строго.
У меня была следующая идея: записывать в cookie не просто зашифрованный ID пользователя, а строку вида "ID-IP", потом при разборе расшифрованной строки сравнивать IP-адреса. В интернете IP пользователя скорее всего выделяется динамически, поэтому идея отпала, а других нет. Отсюда вопрос: как это делают те, у кого прямые руки и прочие несомненные достоинства?
Преамбула:
1) Пользователь ввел логин и пароль, включил опцию "сохранять логин и пароль" (или "автоматичский вход", неважно) и нажал кнопку "Войти".
2) Сервер выяснил, что такой пользователь существует и теперь надо обеспечить автоматический вход.
3) Сервер записал в cookie, например, ID пользователя (предположим, зашифровал его с помощью функции обратного шифрования).
4) В следующий раз при входе сервер проверил наличие такого cookie и загрузил данные пользователя автоматически.
Амбула:
1) Плохой дядя зарегистрировался на сервере и выяснил имя cookie с ID пользователя.
2) Плохой дядя создал свой сайт с похожим названием (например, phpklub.ru,

3) После входа пользователя на поддельный сайт сервер сайта считал cookie, принадлежащее оригинальному сайту и сохранил его.
4) Плохой дядя методом прямого редактирования сделал на своем компьютере cookie с указанным выше именем и данными другого пользователя.
5) Плохой дядя автоматом загрузился на оригинальный сайт и что-то сделал.
Я в PHP новичок, потому не судите строго.
У меня была следующая идея: записывать в cookie не просто зашифрованный ID пользователя, а строку вида "ID-IP", потом при разборе расшифрованной строки сравнивать IP-адреса. В интернете IP пользователя скорее всего выделяется динамически, поэтому идея отпала, а других нет. Отсюда вопрос: как это делают те, у кого прямые руки и прочие несомненные достоинства?