Проверка логина + проверка IP-адреса в PHP - PullRequest
0 голосов
/ 17 марта 2011

Проверка логина на основе имени пользователя и пароля выполнена для приложения php, которое я сделал.

Я хочу также выполнить проверку IP-адреса. (Пользователь не может войти в систему с двух разных IP-адресов одновременно)

Мне интересно, это будет надежно в производственной среде? Потому что некоторые говорят, что адрес прокси будет только получен сервером PHP. Это так?

Ответы [ 4 ]

1 голос
/ 17 марта 2011

Есть несколько вещей, на которые следует обратить внимание:

Более чем возможно, что разные законные пользователи вашей системы могут совместно использовать IP-адрес от своего интернет-провайдера, такой тип настройки называется NAT.Отдельные запросы от одних и тех же законных пользователей могут в конечном итоге прийти по разным IP-адресам во время одного и того же сеанса, что более редко, но это случается.Также возможны прокси, как вы упомянули.

Поэтому обязательно подумайте об этом, прежде чем реализовывать такую ​​функцию.

0 голосов
/ 17 марта 2011

Если вам необходимо внедрить проверку IP-адреса, вы должны вести список IP-адресов, которым разрешен доступ к системе, и проверять IP-адрес клиента по нему.

Если вы беспокоитесь о прокси-серверах, проверьте заголовки, такие как HTTP_X_FORWARDED_SERVER, HTTP_X_FORWARDED_FOR, чтобы определить исходный IP-адрес. Я не уверен, будет ли это работать с прокси-серверами socks.

0 голосов
/ 17 марта 2011

Прокси вещь верна.Каждый раз, когда запрос проходит через прокси, смена IP.В конце концов, у вас может быть IP-адрес последнего прокси-сервера, который прошел петиция.

0 голосов
/ 17 марта 2011

Вы получите IP-адрес с $ _SERVER ['REMOTE_ADDR']

Мне нужно больше подумать о правильном решении, но, возможно, вы сможете что-то сделать с сеансами (и их именами)

http://www.php.net/manual/de/function.session-name.php

и, возможно, нам нужна база данных тоже.возможно я отвечу завтра снова, это 6:00 :)

...