0
我有下面的代碼:Ruby:protect_from_forgery什麼時候出現?
class Foo < ActiveRecord::Base
protect_from_forgery
end
我的疑問是,當protect_from_forgery
會叫什麼名字?何時創建Foo的實例?
在此先感謝
我有下面的代碼:Ruby:protect_from_forgery什麼時候出現?
class Foo < ActiveRecord::Base
protect_from_forgery
end
我的疑問是,當protect_from_forgery
會叫什麼名字?何時創建Foo的實例?
在此先感謝
有人用更多的知識比我可能知道一個更好的答案,但這裏是我的理解是:
當瀏覽器發送POST請求,導軌包括與額外的真實性令牌與該用戶會話相對應的請求。如果我知道另一個用戶真實性標記,則可以在包含其標記的頁面上添加一個html元素,並提交冒充其用戶的請求。這被稱爲跨網站請求僞造。爲了保護您的網站免受此類攻擊,rails包含一種名爲protect_from_forgery
的方法。此方法應放置在應用程序控制器的頂部,以便檢查每個請求的真實性。
進一步閱讀可在Rails Guide to Security找到。