【发布时间】:2012-12-11 14:48:59
【问题描述】:
我正在使用 Rails 4 强参数构建一个 Web 应用程序。
在构建管理员后台控制器时,我想知道允许所有模型属性的最佳方式是什么?
现在,我写了这个:
def user_params
params.require(:user).permit(User.fields.keys)
end
你有没有更好的办法?
【问题讨论】:
-
为什么?我只在我信任所有用户的管理后台做这种事情。
-
仅仅因为你信任他们(你不应该信任他们,但那是另一回事),让你所有的数据都被覆盖是一个等待被利用的安全漏洞
-
@sevenseacat 至少他在问是否有更好的方法来做到这一点。
-
@AndrewGrimm 是的,但他仍然希望默认情况下允许所有内容,这是不安全的做法,并且完全否定了强参数的意义。
-
@Anwar '因为我懒得打字' 很可能是绕过安全措施的最糟糕的理由。
标签: ruby-on-rails ruby-on-rails-3 strong-parameters