ruby-on-rails - Firefox 中的 rails csrf 验证

标签 ruby-on-rails devise csrf

我有一个用 Rails 创建的站点,使用 Devise 进行身份验证。它在 Chrome 中运行良好,但在 Firefox 中我无法登录。我只能看到日志中的一条消息:WARNING: Can't verify CSRF token authenticity并且登录屏幕返回时没有任何错误消息。

有人可以给我一个提示在哪里照顾正在发生的事情吗?

最佳答案

我遇到了完全相同的问题。登录在 Chrome 中工作,而不是在 FF 中工作。
问题与CSRF无关,因为我注释掉了protect_from_forgery并尝试登录,但不允许我登录。唯一的区别是警告消息消失了。

经过一些调试,我发现问题与 session 和 :domain => :all session 存储的设置有关。

MyApp::Application.config.session_store :cookie_store, key: '_myapp_session', :domain => :all

我删除后 :domain => all ,我可以使用 Firefox 登录。希望这会帮助某人,即使答案迟到两个月。

关于ruby-on-rails - Firefox 中的 rails csrf 验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19132050/

相关文章:

security - 如何在允许用户发布外部图像的同时防止 XSS 注入(inject)

csrf - 究竟是什么触发了 PFG 表单上的 "Form authenticator is invalid"异常?

security - Meteor.js 和 CSRF/XSS 攻击

ruby-on-rails - 如何在 Ruby on Rails 中将类添加到 datetime_select

mysql - rails : can't migrate database

html - 从 Rails View 更改 Haml 表的 CSS 属性

javascript - 为什么我在 Rails jQuery POST 请求中收到 401 错误?

ruby-on-rails - Ruby on Rails 中基于授权或基于角色的权限入门。

ruby-on-rails - ruby instance_variable_get 返回 nil

ruby-on-rails - 设计:将现有访客用户转换为注册用户