我在使用rails实现rack-protection gem时遇到了一些困难。
以这种方式启用了AuthenticityToken保护:
#application.rb
module MyApp
class Application < Rails::Application
config.middleware.use Rack::Protection
config.middleware.use Rack::Protection::AuthenticityToken
end
end
问题在于我远离了#34; Forbidden&#34;使用Devise gem进行日志记录时。
WARN -- : attack prevented by Rack::Protection::AuthenticityToken
然而&#34; csrf_meta_tags&#34;出现在每页的顶部:
<head>
<meta name="csrf-param" content="authenticity_token">
<meta name="csrf-token" content="+4lRTVfIWBjsgGXEzHFVCIf/Bi/jqqfkLPg6qdw5FMHA1L3Eh36I+hALcRIhv1VjfgTznssJqvRh+/IEMhyNeA==">
</head>
并且authenticity_token也作为隐藏在会话表单中的输入传递:
<input name="authenticity_token" value="+4lRTVfIWBjsgGXEzHFVCIf/Bi/jqqfkLPg6qdw5FMHA1L3Eh36I+hALcRIhv1VjfgTznssJqvRh+/IEMhyNeA==" type="hidden">
我在这里缺少什么?
我处于开发模式,而非生产。
谢谢!