我有一個評論模型。我正在通過將參數從我的視圖傳遞給註釋控制器來創建該模型的新實例。以下是評論控制器:通過傳遞params來創建新模型是否安全?
class CommentsController < ApplicationController
def create
session[:return_to] = request.referrer
@comment = Comment.create(:user_id => current_user.id,
:issue_id => params[:issue_id],
:content => params[:content])
redirect_to session[:return_to]
end
end
這裏是我想過去的PARAMS在我看來:
<%= link_to "Test Comment", comments_path(:issue_id => @issue.id,
:content => "HeLLO"),
method: :create %>
我的問題是 - 這是安全的?什麼阻止某人更改params [:issue_id]並評論其他問題?有沒有更好的方法來做到這一點?
請問你的模型'Comments'在[驗證]執行任何授權檢查(HTTP訪問://指南.rubyonrails.org/active_record_validations_callbacks.html)?您的模型可以擴展到授權嗎? – sarnold
不,它沒有。我想不出任何驗證添加,以防止用戶試圖更改參數 –