Cron Kohana采取行动并阻止CSRF

时间:2011-09-30 14:44:16

标签: cron kohana csrf

我需要通过cron调用Kohana动作。我可以使用此代码仅限制服务器IP:

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

我是否需要CSRF预防,如令牌?服务器是Parallel的VPS。我不认为网络上有任何用户浏览其他页面会使他们容易受到CSRF的影响。

如果需要,我能想到防止这种情况的唯一方法是在cron之外创建一个不可访问的PHP脚本,由cron调用,生成令牌并保存到平面文件,并通过外部将该令牌传递给Kohana包括使用这个

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

2 个答案:

答案 0 :(得分:0)

如果要通过本地计算机调用脚本(根据您的代码示例),那么您可以通过确保通过CLI调用代码来简化脚本。

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

对于CSRF令牌,您不需要它们。 CSRF的工作原理是利用某人点击一个代表他们发起行动的链接。由于您无法通过浏览器访问cron控制器/操作(您不应该这样做),因此您无需担心它。

答案 1 :(得分:0)

我非常确定您要将this module用于任何与CLI相关的任务。它可能会作为官方Kohana模块包含在3.3版本中,因为它非常受欢迎和支持。