Ruby on rails Rails 3-参数为的链接是否安全?

Ruby on rails Rails 3-参数为的链接是否安全?,ruby-on-rails,ruby-on-rails-3,Ruby On Rails,Ruby On Rails 3,一般来说,你不应该信任用户输入的任何数据。如果您有一个带有参数的简单链接,请执行以下操作: link_to "Click me", test_path(:my_param => "test") 路径可能如下所示:example.com/test?my_param=test 我如何知道参数或任何注入的数据是否被正确过滤?Rails 3 API没有指定过滤传递给控制器的数据,但我希望在使用参数数据之前,确保在控制器中安全过滤参数[:my_param] 有什么想法吗?Rails框架在默认情况下

一般来说,你不应该信任用户输入的任何数据。如果您有一个带有参数的简单链接,请执行以下操作:

link_to "Click me", test_path(:my_param => "test")
路径可能如下所示:example.com/test?my_param=test

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


有什么想法吗?

Rails框架在默认情况下不会为
GET
请求提供安全保护。指向标记的链接正在发送http get请求

如果它是一个
POST/PUT/DELETE
请求,那么Rails使用
protect\u from\u fake
来验证数据发送url

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

您可以在过滤器之前编写
,以检查GET请求的发送参数


HTH

Rails框架在默认情况下不会为
GET
请求保护内容。指向标记的链接正在发送http get请求

如果它是一个
POST/PUT/DELETE
请求,那么Rails使用
protect\u from\u fake
来验证数据发送url

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

您可以在过滤器之前编写
,以检查GET请求的发送参数


HTH

只要你正确使用框架,不去编写原始SQL并使用提供的帮助程序,过滤就会发生。只要你正确使用框架,不去编写原始SQL并使用提供的帮助程序,过滤就会发生。这正是我想要的。一个简单的带有regex的helper方法应该能够过滤掉GET请求中不需要的数据。再次感谢!完美,这正是我想要的。一个简单的带有regex的helper方法应该能够过滤掉GET请求中不需要的数据。再次感谢!