【问题标题】:Cross-site request forgery Yii ,PHP跨站请求伪造 Yii,PHP
【发布时间】:2012-08-14 18:06:00
【问题描述】:

我正在尝试在 yii 中实现 CSRF 验证。我已经编写了自己的课程,除了我的 post 变量(用于表单)不包含 token 之外,一切正常。我应该自己在 post 变量中设置令牌吗? Yii 文档指出 post 变量由每个表单中的隐藏字段设置。它是否也需要在表格中进一步实施?我知道令牌不存在,因为我通过转储它们看到了 Post 变量。

【问题讨论】:

    标签: security web yii csrf


    【解决方案1】:

    我想您需要的只是在您的配置中启用 CSRF 验证并使用 CHtml 进行表单 (Yii Guide)。这是您在配置中需要的:

    'components'=>array(
        'request'=>array(
            'enableCsrfValidation'=>true,
        ),
    ),
    

    【讨论】:

      【解决方案2】:

      除了启用 CSRF 验证外,您还需要将 Yii CSRF 令牌放入表单中。我遇到的最简单的方法之一是使用 CHtml beginForm,它将它作为生成表单标签的一部分。更多信息在这里:http://www.yiiframework.com/doc/api/1.1/CHtml#beginForm-detail

      【讨论】:

        猜你喜欢
        • 2014-06-21
        • 2021-10-17
        • 2013-02-28
        • 2013-07-17
        • 2014-08-31
        • 2019-05-26
        • 1970-01-01
        • 2013-11-19
        • 1970-01-01
        相关资源
        最近更新 更多