Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 轨道是否安全,是否有隐藏场和firebug?_Ruby On Rails_Ruby - Fatal编程技术网

Ruby on rails 轨道是否安全,是否有隐藏场和firebug?

Ruby on rails 轨道是否安全,是否有隐藏场和firebug?,ruby-on-rails,ruby,Ruby On Rails,Ruby,我正在开发一个web应用程序,困扰我的是用户可以使用firebug来操作代码 <%= form_for([@journal, @news]) do |f| %> <div class="field"> <%= f.label :title %> <%= f.text_field :title %> </div> <%= f.hidden_field :journal %> <div

我正在开发一个web应用程序,困扰我的是用户可以使用firebug来操作代码

<%= form_for([@journal, @news]) do |f| %>
  <div class="field">
    <%= f.label :title %>
    <%= f.text_field :title %>
  </div>

  <%= f.hidden_field :journal %>

  <div class="actions">
    <%= f.submit %>
  </div>
<% end %>
该url看起来像是so mysite.com/journal/1/news/3。由于日志id位于url中,我如何防止用户将日志id值1更改为2或3之类的值

<input id="news_journal_id" type="hidden" value="1" name="news[journal_id]">

您不能阻止用户向您发送修改后的输入。您可以(也应该)检查服务器上的输入,而不是盲目地接受它


如果用户无法读/写此日志,请将其重定向到相应的页面,等等。

您无法阻止用户向您发送修改后的输入。您可以(也应该)检查服务器上的输入,而不是盲目地接受它


如果用户不能读/写此日志,请将其重定向到相应的页面,等等。

您不能。永远不要相信来自任何地方的输入。实施任何类型的服务器端验证/角色模型/访问限制。

您不能。永远不要相信来自任何地方的输入。实施任何类型的服务器端验证/角色模型/访问限制。

您应该使用当前用户关联来获取任何记录,以确保应用程序的安全

例如:

journal = currect_user.journals.find(params[:news][:journal_id])
journal.news.create(params[:news].except(:journal_id))

您应该使用当前用户关联来获取任何记录,以确保应用程序的安全

例如:

journal = currect_user.journals.find(params[:news][:journal_id])
journal.news.create(params[:news].except(:journal_id))