【问题标题】:CakePHP and CSRFCakePHP 和 CSRF
【发布时间】:2010-12-07 18:02:30
【问题描述】:

我是 CakePHP 的新手,想知道如何保护我的表单免受跨站请求伪造,即向表单添加随机数。我已经在配置文件中设置了盐。

【问题讨论】:

    标签: php cakephp csrf


    【解决方案1】:

    您必须将 Security 组件添加到控制器的 $components 数组中:

    public $components = array('Security');

    然后,当您使用表单助手创建表单时,CakePHP 会自动向您的表单添加一个随机数。

    【讨论】:

    • 始终确保使用表单助手创建所有表单元素,否则您可能会遇到错误“黑洞”
    【解决方案2】:

    您还可以导入 Sanitze 库以获得更强大的安全性

    http://book.cakephp.org/view/153/Data-Sanitization

    App::import('Sanitize');
    $badString = ";:<script><html><   // >@@#";
    echo Sanitize::paranoid($badString);
    // output: scripthtml
    echo Sanitize::paranoid($badString, array(' ', '@'));
    // output: scripthtml    @@
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-02-02
      • 1970-01-01
      • 1970-01-01
      • 2012-05-27
      • 2019-01-15
      • 1970-01-01
      • 1970-01-01
      • 2016-04-05
      相关资源
      最近更新 更多