如何在rails应用程序中关闭CSRF保护?

时间:2008-09-26 08:32:51

标签: ruby-on-rails security csrf

Rails内置的CSRF预防对我们正在进行的一些自动负载测试造成了一些问题,我想在整个过程中将其关闭。我该怎么做?

2 个答案:

答案 0 :(得分:27)

我喜欢简单的问题和明确的答案。

#I go in application.rb
self.allow_forgery_protection = false

如果您只想将其用于测试,则可将其移至其中一个环境文件中(显然,您将触及Application,而不是self)。你也可以这样写:

#I still go in application.rb
self.allow_forgery_protection = false unless ENV["RAILS_ENV"] == "production"

有关详细信息,请参阅here。 (继续Rails在2年历史博客文章中提供核心功能文档的精彩传统,这些文章是从提交日志中提取的。)

答案 1 :(得分:3)

在Rails 3中,删除protect_from_forgery

中的app/controllers/application_controller.rb命令