Cron Kohana действий и предотвращения CSRF - PullRequest
0 голосов
/ 30 сентября 2011

Мне нужно вызвать действие Kohana через cron.Я могу использовать этот код, чтобы ограничить только IP-адрес сервера:

$allowedIps = array('127.0.0.1','::1');
if(in_array($_SERVER['REMOTE_ADDR'],$allowedIps))

Нужно ли мне предотвращение CSRF, как токены?Сервер является VPS Parallel.Я не думаю, что в сети будут пользователи, просматривающие другие страницы, что делает их восприимчивыми к CSRF.

Единственный способ предотвратить это, если это необходимо, - создать недоступный PHP-скрипт вне Kohana, вызываемый cron, сгенерировать токен и сохранить его в плоский файл, а затем передать его в Kohana.через внешнее включение, используя это

http://forum.kohanaframework.org/discussion/1255/load-kohana-from-external-scriptapp/p1

Ответы [ 2 ]

0 голосов
/ 03 октября 2011

Я уверен, что вы хотите использовать этот модуль для любых задач, связанных с CLI. Он, вероятно, будет включен в качестве официального модуля Kohana начиная с версии 3.3, поскольку он очень популярен и поддерживается.

0 голосов
/ 02 октября 2011

Если сценарий будет вызываться через локальную машину (что соответствует вашему примеру кода), вы можете упростить это, убедившись, что код вызывается через CLI.

if (Kohana::$is_cli)
{
    // Run function
}

Что касается токенов CSRF, то они вам не нужны.CSRF работает, используя кого-то, чтобы щелкнуть ссылку, которая инициирует действие от его имени.Поскольку вы не можете получить доступ к контроллеру / действию cron через браузер (вы не должны этого делать), вам не нужно об этом беспокоиться.

...