PHP сессия - несколько пользователей с 1 IP - PullRequest
1 голос
/ 22 марта 2012

В понедельник я подумал, что решил проблему безопасности угона сеанса, установив сеанс в качестве IP-адреса пользователя, пока я не вошел в систему. У меня было два пользователя с одинаковым IP (я и тестовый пользователь), и он продолжал переключаться между два. Есть ли способ предотвратить это и разрешить двум пользователям с одинаковым IP регистрироваться на моем сайте?

Спасибо заранее, Терри.

Ответы [ 3 ]

1 голос
/ 22 марта 2012

Возможно, вы читали совет о сохранении IP-адреса пользователя в таблице вместе с идентификатором сеанса (не вместо).Затем вы проверите, чтобы убедиться, что они поступают с того же IP-адреса при последующих запросах, в противном случае вынудите их снова войти в систему.У этого метода есть проблемы, так как IP-адрес пользователя может меняться так часто, как каждые десять минут, в зависимости от его провайдера!

Используйте идентификатор сессии, предоставленный PHP, так как он уникален и его трудно угадать.Требовать, чтобы он читался из cookie, а не из URL.

1 голос
/ 22 марта 2012

SSL весь сайт, если это вызывает беспокойство и применять короткий тайм-аут cookie. Ssl зашифрует cookie и передачу, чтобы его нельзя было прослушать с провода. Небольшое время жизни сделает cookie бесполезным вскоре после того, как он был извлечен с «подключенного» компьютера, если у него есть прямой доступ к системе. Короче говоря, получите сертификат безопасности и продолжайте обычную сессию php.

0 голосов
/ 22 марта 2012

Я так понимаю, вы ищете информацию о пользователе в базе данных MySQL, используя его IP?Это не правильно.Единственный способ быть по-настоящему уникальным - использовать поле первичного ключа.

Либо сохраните первичный ключ в качестве сеанса и извлеките его данные, либо сохраните соответствующую информацию в сеансе и извлекайте что-либо еще, только когда это необходимо.

...