【问题标题】:Cakephp save data , check if belongs to authed userCakephp保存数据,检查是否属于authed用户
【发布时间】:2013-03-25 02:58:32
【问题描述】:

这就是它的样子:

网址:/Category/Edit/(category.id)

控制器:

从类别加载信息并将其放入编辑表单 -> 提交表格 然后你有:

$this->类别->id=$id;

$this->Category->save($this->request->data);

因为它从 url 获取 id,它可以很容易地更改为属于另一个用户的 id 我如何确定它是否执行检查该类别是否属于经过身份验证的用户。

已建立关联,用户->类别(一对多)

但是在写这篇文章的时候,我可能发现了一些东西,我可以在模型中使用 beforeSave 如果您知道如何更好地做到这一点,请告诉我。

谢谢

【问题讨论】:

    标签: cakephp authentication cakephp-2.0 cakephp-model


    【解决方案1】:

    一些事情:

    1. id 应该在 POSTed 数据中,而不是在提交的 URL 中
    2. 使用安全组件来帮助防止表单被篡改
    3. 您的网址示例应为“/categories/edit/(category.id)”
    4. 在你的模型中构建一个方法,而不是仅仅使用来自控制器的默认save()。在您的方法中,您可以检查以确保类别的所有者(基于 user_id 字段)与登录的 Auth 用户的所有者匹配。

    【讨论】:

    • 谢谢,这正是我所需要的 :) & 是的,它是 /categories/
    猜你喜欢
    • 1970-01-01
    • 2016-04-18
    • 2013-08-31
    • 2021-12-15
    • 2021-12-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多