gpt4 book ai didi

php - Magento CSRF 保护

转载 作者:可可西里 更新时间:2023-11-01 12:30:57 25 4
gpt4 key购买 nike

我正在查看 Magento 中的自定义表单。我看到了这些教程

http://fastdivision.com/2012/03/29/diy-magento-create-ajax-login-registration-forms-for-your-magento-theme/

http://inchoo.net/ecommerce/magento/magento-email/magento-custom-email-contact-form-with-notification-system/

我没有看到任何关于 CSRF 预防的提及,例如检查客户端 token 与存储在用户 session 中的 token 。我还查看了 Magento 联系我们表格,看到了这个,但我认为它与 CSRF 无关:

<input type="text" name="hideit" id="hideit" value="" style="display:none !important;">

Magento 是否有防止 CSRF 的默认代码? Mage_Core_Controller_Front_Action 的 $this->getRequest()->getParams() 方法是否会自动执行任何操作以防止我可能丢失的 CSRF?

最佳答案

实际上有一个前端CSRF token validation Magento 中的方法,您可以使用它向您的自定义表单添加一个唯一的基于 session 的表单 key ,并在 Controller 的操作中验证它。

要在提交表单时随请求发送 CSRF 表单 key ,请插入 <?php echo $this->getBlockHtml('formkey') ?>代码到表单的正文中。

这将生成如下输入:<input type="hidden" value="unique16codehere" name="form_key"> .要验证 key ,请使用 _validateFormKey()相应 Controller 操作中的方法。

关于php - Magento CSRF 保护,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12945681/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com