我正在考虑在 Rails 中实现某种形式的匿名用户系统。我需要让人们做事(创建记录、查看他们创建的内容等),而无需实际创建帐户。一旦他们创建了一个帐户,一切都会持续存在,而不会因清除 cookie 或其他东西而丢失它。
现在,我认为这很简单。在 User 模型中有一个 is_anonymous 字段,并使用类似这样的东西来访问当前登录的用户:
def find_user
session[:user_id] ||= create_new_anonymous_user.id
end
假设会话持续了一段合理的时间,并且会话 cookie 没有过期,那应该可以让一切顺利运行。
然而,我的这一部分确信我错过了一些与安全相关的东西。有没有人做过这样的事情?我错过了一些非常明显的东西吗?
谢谢!