0
您好我有一個NOOB問題,根據在GITHUB發生的事情,他們的應用程序因爲Rails中的安全漏洞而被利用。如何保護屬性免受大規模分配
在Rails中保護對象屬性的最佳方式是什麼,但仍然允許在適用的情況下爲它們分配值?
感謝
您好我有一個NOOB問題,根據在GITHUB發生的事情,他們的應用程序因爲Rails中的安全漏洞而被利用。如何保護屬性免受大規模分配
在Rails中保護對象屬性的最佳方式是什麼,但仍然允許在適用的情況下爲它們分配值?
感謝
事實上的Rails 3.1添加了新的內置的方式來處理大量任務與角色這可能是要看看東西。
發行說明here
基本上它的工作原理是這樣的:
class User < ActiveRecord::Base
attr_accessible :name
attr_accessible :name, :role, :as => :admin
end
這是什麼讓你做的是,你可以用下面的方法來允許用戶在一個更新自己的信息你的控制器:
@user.update_attributes(params[:user])
這使用率永遠不能更新在用戶模式:role
屬性。但是,當你有你的管理員用戶管理在一個單獨的控制器的角色,那麼你可以通過用戶的語法如下:
@user.update_attributes(params[:user], :as => :admin)
這將允許:role
屬性被更新
感謝DanneManne幫助。我會這樣做的。 – chell 2012-03-08 03:23:02