Защищать файл PHP; как? - PullRequest
3 голосов
/ 26 октября 2010

У меня есть сайт объявлений, и у нашего партнера (который управляет другим сайтом объявлений) должен быть доступ к файлу на нашем сервере.

Файл называется 'partner.php'.

Этот файл просто распечатывает некоторую информацию о объявлениях на нашем сайте.

Так что для наших партнеров им просто нужно зайти на "www.domain.com/partner.php?id=1234", чтобы получить доступ к этой информации.

Я планирую добавить хеш к URL, чтобы посторонние не имели доступа к файлу. Но я не знаю, как это сделать ...

Есть ли кто-нибудь, кто мог бы указать мне правильное направление?

Мне сказали по телефону, что я могу использовать строку MD5 длиной 32 и добавить ее к URL", но я действительно понятия не имею, как начать, или что они имели в виду?

Кто-нибудь знает, что они имеют в виду?

Примеры приветствуются.

Спасибо

Ответы [ 4 ]

2 голосов
/ 26 октября 2010

Я планирую добавить хеш к URL, чтобы посторонние не имели доступа к файлу. Но я не знаю, как это сделать ...

не делай так. Хэш подходит для одноразовых ссылок, таких как подтверждение по электронной почте, но не для конфиденциальной информации. Хеш будет присутствовать в истории пользователя, кэше и в протоколах Proxy; им можно поделиться случайно.

Вам необходимо изучить правильную аутентификацию на основе входа в систему.

Некоторые отправные точки:

1 голос
/ 26 октября 2010

Возможно ли использовать другой подход?

Может быть, вы можете использовать .htaccess, чтобы разрешить доступ к файлу только с определенных IP-адресов.

Проверьте эту страницу на .htaccess .Есть раздел под названием «Ограничение по IP-адресу»

1 голос
/ 26 октября 2010

Или вы можете использовать как хэш-ключ, так и проверку IP.Если ваш партнер использует только один компьютер / сервер для доступа к вашему файлу, вы можете проверить хеш-ключ и IP-адрес пользователя.

$ip = $_SERVER['REMOTE_ADDR'];
0 голосов
/ 26 октября 2010

Вы можете использовать HTTP-аутентификацию, например, через .htaccess

Добавление хеша к URL-адресу означает, что вы передаете GET-параметр в скрипт и проверяете его при запуске скрипта. Если значение не является ожидаемым, скрипт может просто умереть (); или выбросить какую-нибудь ошибку.

Но я бы НАСТОЯТЕЛЬНО НЕ рекомендовал хэш, это плохая идея.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...