自从我了解到 attr_accessible 的安全漏洞以来,我一直在尝试非常小心地处理这类事情,所以我只需要澄清一下。
假设我有一个 Comment 模型,它有
attr_accessible :user_id
以我的形式,我做
= f.hidden_field :user_id, :value => @current_user.id
所以我不是从参数中获取值,而是从当前用户的实际 ID 中获取。
然而,我关心的不是我自己的表单,而是恶意请求。例如,如果有人要发送一个 post 请求,如下所示:
POST comments?user_id=5
当他们的 user_id 实际上是 1 时。他们可以代表其他人发帖吗?
谢谢你。