2013-04-03 35 views
3

如果我在Rails中有一個表單,並且我只想向用戶公開某些字段,我該如何防止用戶黑客入侵表單並添加額外的字段來插入不需要的數據?Ruby on Rails:什麼阻止用戶添加表單域到表單?

例如,假設我有一個task.rb模型,其中包含以下列:name,description,internal_notes。對於在「應用程序/視圖/任務/ new.html.erb」公衆的形式,我只是想揭露公共領域,像這樣:

form 
    name: 
    description: 
/form 

如何防止用戶從黑客的形式,做這個:

form 
    name: 
    description: 
    internal_notes: <--- inserted by user (e.g. through Google Chrome Elements) 
/form 

例如,用戶可以輸入到<input type="text" name="task[internal_notes]" />的形式,並提交不需要的數據。

有沒有辦法阻止?

回答

2

我會建議使用strong_parameters寶石,因爲它是怎麼回事是MassAssignment protectionn在Rails的標準溶液4

+0

精彩的提示。非常感激。謝謝Dan :) – sjsc