Это хорошая практика Ajax-безопасности? - PullRequest
0 голосов
/ 24 марта 2012

В современных шаблонах URL (стиль пути) я сделаю три запроса:

  1. / hello - будет доступно конечному пользователю
  2. / getdata - будет обработчиком ajax на стороне сервера, который будет инициирован / from / hello
  3. / getresults - будет недоступен для прямого или Ajax-доступа, но он будет доступен, и ответы из этого сценария будут доступны из «доступа к локальному серверу», например, для доступа к нему с помощью cURL, определенного в / getdata, и отправка некоторых конкретных заголовков из / getdata - для обеспечения безопасности доступа.

Это просто моя теория, я знаю, что это возможно, но мне просто интересно, что вы все думаете об этом "подходе безопасности ajax", и думаете ли вы, что это будет более безопасный способ " скрыть "другие ваши подзапросы или что-то еще?

Я еще не сделал этого, но у меня есть это в моем списке планов.

1 Ответ

2 голосов
/ 24 марта 2012

Из комментариев:

Вы когда-нибудь задумывались о том, чтобы ваш Ajax-запрос сделал их недоступными через прямой доступ, а это означает, что только запрос XmlHttpRequest может получить к ним доступ?

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

Если /getresults содержит конфиденциальные данные, требуется надлежащая защита, например, через функцию входа в систему.

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