Bat*_*sai 1 cakephp cakephp-3.0 cakephp-3.1 cakephp-3.x
所以我让我的网站现场直播,我进入公共领域,人们并不总是很好.我刚刚开始学习CSRF,并发现当我将cakephp 3网站现场直播时,这是我需要的东西.如此处所见!
我将csrf组件和安全组件添加到我的站点,但我有一个主要问题.现在,当用户想要注册时,他们不能.我使用条带的自定义表单来发送付款,但也使用ajax将用户添加到我的数据库.首先添加用户,然后处理付款并将订单保存到数据库.
根据条带文档,我在单击提交按钮后将隐藏值中的标记添加到表单中,并且不禁注意到我的新安全性不允许这种情况发生.
由于我使用ajax将发布数据发送给我的用户控制器并在提交时添加表单输入,
如何在不禁用相关操作的安全性的情况下检查csrf令牌并确保没有安全漏洞?
一个如何做到这一点的例子将非常受欢迎,因为在cakephp 3中似乎缺乏这样做的例子.由于cakephp 3 automagic将标记添加到表单中,因此我很难弄清楚一切是如何工作的.曲奇饼.我不确定如何/在哪里/检查什么.
对于pass X-CSRF-Token,请beforeSend在Ajax请求中使用参数,并定义csrfTokencookie的值.
$.ajax({
url: '/foo/bar',
type: 'POST',
dataType: 'HTML',
data: data,
beforeSend: function(xhr){
xhr.setRequestHeader('X-CSRF-Token', csrfToken);
},
})
.done(function(data) {
alert('done !');
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3703 次 |
| 最近记录: |