何时跳过verify_authenticity_token

时间:2012-02-24 23:05:49

标签: ruby-on-rails ruby-on-rails-3

为什么人们会跳过验证并增加其应用的安全漏洞?在只有GET请求的页面上禁用它是否有益?提前谢谢。

2 个答案:

答案 0 :(得分:4)

已经在rails

中跳过了GET请求的CRSF检查

http://guides.rubyonrails.org/security.html

  

3.1 CSRF对策         - 首先,根据W3C的要求,适当地使用GET和POST。其次,非GET请求中的安全令牌将保护您的应用程序免受CSRF的侵害。

您也可以看到方法本身。

http://api.rubyonrails.org/classes/ActionController/RequestForgeryProtection.html#method-i-verify_authenticity_token

 .... Also, GET requests are not protected as these should be idempotent. ....

 verified_request?()
   Returns true or false if a request is verified. Checks:
   is it a GET request? Gets should be safe and idempotent

答案 1 :(得分:1)

如果您有跨域应用程序,则可能会出现authtoken验证错误,您可以将其禁用,但当然您的应用程序将不安全。在rails 3中,有一些特殊的方法可用于开箱即用的跨域解决方案