我正在考虑在Rails中实现某种匿名用户系统。我需要让人们能够进行某些操作(创建记录,查看他们创建的内容等),而不用真正创建一个帐户。一旦他们创建了帐户,所有内容都会持久化,不会因为清除cookie或其他原因而丢失。
我现在认为这非常简单。在用户模型中设置一个is_anonymous字段,并使用类似以下的方式访问当前登录的用户:
def find_user
session[:user_id] ||= create_new_anonymous_user.id
end
假定会话持续一段合理的时间,并且会话 cookie 没有过期,那么应该可以使所有的操作平稳运行。
然而,有一个部分的我确信自己在关注安全方面漏掉了什么。有没有人之前做过这样的事情?我漏掉了什么非常明显的东西吗?
谢谢!