Обеспечение вызова GET - PullRequest
1 голос
/ 29 мая 2011

У меня есть файл caller.php, который принимает GET URI, который задает значение для поиска в базе данных.Затем данные возвращаются в формате JSON с использованием php.

Я хочу защитить caller.php, чтобы он был доступен только с другой страницы, get.php, с помощью вызова AJAX.

Как лучше всего это сделать?

Ответы [ 2 ]

9 голосов
/ 29 мая 2011

Я хочу защитить caller.php, чтобы он был доступен только с другой страницы, get.php, с помощью вызова AJAX.

Вы не можете.Вызов AJAX может быть легко подделан, как и его источник.

На стороне сервера нет надежного способа определить, является ли вызов Ajax или нет, и откуда он поступил.

Вам необходимо защитить свой ресурс Ajax таким же образом, вы бы защитили обычную страницу - например, через систему авторизации, такую ​​как логин пользователя и т. Д.

Без такой системы авторизации вы должны предполагать, что каждый может получить доступ к URL.

3 голосов
/ 29 мая 2011

Вы можете проверить сеанс, чтобы увидеть, авторизован ли вызов или нет. AJAX-запросы отправят вам файл cookie сеанса PHP. Это предполагает, что caller.php защищен какой-то системой входа пользователя, которая использует сеансы

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