我有以下代码rmodal
创建了一个对象()。
也就是说,类与其他一些类(cmodal
, umodal
, ccmodal
, pmodal
, emodal
)具有多态关联
的创建rmodal
有一个带有隐藏字段的表单,其中包括其类型(cmodal
、umodal
等)和 ID(r_id
)
以下代码是否足够安全?刹车人目前指出,这条线可能会导致远程代码执行
@r_type = params[:r].delete :r_type
if (%w(cmodal umodal ccmodal pmodal emodal).include? @r_type)
@rmodal = @r_type.classify.constantize.find(@r_id) rescue nil
我猜,因为我正在检查这r_type
是可以接受的选择之一,所以它很好。
这是正确的方法吗?它是否足够安全?