【问题标题】:What are the possible causes of a CGI::Session::CookieStore::TamperedWithCookie exception in railsRails 中 CGI::Session::CookieStore::TamperedWithCookie 异常的可能原因是什么
【发布时间】:2010-09-11 23:01:13
【问题描述】:
在更改应用上的config.action_controller.session.secret 设置后,我收到了预期CGI::Session::CookieStore::TamperedWithCookie(作为全面部署准备的一部分。
我是否正确假设在测试人员设置了 cookie 时更改密码是造成这种情况的原因,还有什么其他原因(由于安全攻击和编码问题)
【问题讨论】:
标签:
ruby-on-rails
security
cookies
【解决方案2】:
您的异常的原因肯定是在测试人员设置了 cookie 时更改了密码。 cookie 使用秘密进行加密签名,以防止用户篡改其 cookie。例如,他们可能会尝试更改他们存储的用户 ID 以提升他们的权限。
您可以要求测试人员清除他们的 cookie。或者,您可以捕获异常并删除应用程序的 cookie。一些网站更喜欢使用ActiveRecordSession 存储来更好地控制他们的会话,因此他们会在需要时放弃所有会话,但会以性能为代价。
【解决方案3】:
是的,测试人员应该清除他们的 cookie。任何时候无法使用指定的密钥解密 cookie,您都会收到该错误。