消除传递给ActiveRecord订单的用户输入

时间:2012-11-14 16:38:05

标签: ruby-on-rails activerecord

我想知道清理正在传递给订单查询的用户输入的最佳方法。

我正在为rails应用程序编写API,并希望用户能够将order_by选项传递给api请求。

例如

get :index, :order_by => 'number asc'

我已经看到使用白名单作为常见解决方案来限制实际通过订单调用(gist example)的内容,但我认为我还需要更多内容。我也希望能够对任何嵌套的关联列进行排序,例如:

get :index, :order_by => 'user.last_name asc'

如何在防止任何SQL注入发生的同时实现这一目标?

0 个答案:

没有答案