以参数安全?

作为一般的经验法则,您不应该相信任何来自用户的数据输入。 如果你有一个简单的link_to参数:

link_to "Click me", test_path(:my_param => "test")

路线可能如下所示:example.com/test?my_param=test

我如何知道参数或任何注入的数据是否被正确过滤? Rails 3 API没有指定它过滤传递给控制器​​的数据,但是我想在使用params数据之前确保在控制器中安全地过滤了params [:my_param]。

有什么想法吗?


对于GET请求,Rails框架默认情况下不保证安全。 link_to标签正在发送http获取请求。

如果是POST/PUT/DELETE请求,则Rails使用protect_from_forgery来验证数据发送网址

但在你的情况下,编写一个简单的方法来验证你的数据获取请求并不困难,

你可以写一个before_filter来检查GET请求的发送参数

HTH

链接地址: http://www.djcxy.com/p/18447.html

上一篇: to with parameters secure?

下一篇: Purge or recreate a Ruby on Rails database