[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Защита php-скрпита от доступа извне
ancient mariner
Други, вопрос такой. Допустим, есть связка php + AJAX. Как грамотно защитить php-скрипт от прямого доступа извне (то есть жёстко привязать php-скрипт только к обработке ajax-запросов)? Почитал кое-что на эту тему, вариантов много - от использования кук при запросах до каких-то совершенно экстравагантных велосипедов.

Собственно, хочу спросить у знающих: как вы для себя решаете эту проблему?



Спустя 12 минут, 10 секунд (23.11.2011 - 05:11) TranceIT написал(а):
К сожалению мои знания ajax ограничиваются библиотекой jQuery, но может вам пригодится.

При определенном событии у меня выполнялся php сценарий находящийся в файле scenario.php. Я решил ограничить доступ к этому файлу, а именно: разрешить его подключать к основному коду, но запретить доступ по прямой ссылке (например http://site.com/scenario.php). Экспериментальным путем я выяснил, что при ajax запросе этого файла из основного сценария ему передается $_SERVER['HTTP_REFERER']. Доступ ограничил так:

if ($_SERVER['HTTP_REFERER'] == 'http://' . $_SERVER['HTTP_HOST'] . '/' ||
$_SERVER['HTTP_REFERER'] == 'http://' . $_SERVER['HTTP_HOST'] .
$_SERVER['REQUEST_URI']) {
// Код сценария
else {
header("HTTP/1.1 404 Not Found");
exit();
}

Спустя 3 часа, 22 минуты, 32 секунды (23.11.2011 - 08:33) linker написал(а):
Были тут уже такие вопросы. Вот только спрашивается нахрена? Один фиг все ваши потуги и прочее обходится как два пальца об асфальт. В чём, по вашему, сокровенный смысл всех этих упорных и бесполезных трудов?

Спустя 1 час, 13 секунд (23.11.2011 - 09:33) TranceIT написал(а):
Цитата (linker @ 23.11.2011 - 05:33)
Один фиг все ваши потуги и прочее обходится как два пальца об асфальт.

Направь в нужное русло...

Спустя 52 минуты, 35 секунд (23.11.2011 - 10:26) linker написал(а):
Для начала объективно оцените, какие цели вы этим пытаетесь достичь?

Спустя 22 минуты, 42 секунды (23.11.2011 - 10:49) redreem написал(а):
linker
TranceIT
да, помнится была такая тема. я еще пытался пояснить как я это делаю, только помнится никто не захотел врубаться. раз уж второй раз вопрос поднялся - предлагаю следующее:
1. у меня есть реализации, запрошенная ТС в этой теме, т.е. в своем двиге я сделал 2 вида обработки ajax запросов, оставлю в результате один, когда пойму какой эффективнее и прозрачнее.
2. задача видимо сводится не к тому, чтобы получить данные от ajax скрипта в серверной части, а к тому, чтобы получить или нет собственно его код, корректность выдаваемых скриптом данных - дело общего вопроса о безопасности.
3. предлагаю попробовать получить код php-скрипта, обрабатывающего ajax-запросы, а вернее даже 2-х вариантов.
4. если согласны - скажу в личку куда смотреть.
5. вопросы об общей безопасности сайта просьба не поднимать и не разводить мнения о других (не ajax) вопросах по сайту, хотя если в процессе ткнете носом в личку - буду благодарен.
6. если тест будет пройден успешно - детально расскажу тут всю технологию.

ну как?
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.