我一直在使用基于cookie的会话商店,直到现在才知道Cookies.那么有什么情况我需要cookie哈希?
Cookie哈希肯定在Rails应用程序中具有价值. 您应该使用cookie在客户端存储要在会话之间记住的值.
"记住我"的标记就是一个很好的例子.如果您希望允许用户在访问您的站点时自动登录,只需存储具有一些用户防篡改值的持久性cookie(如唯一的哈希或guid(好),映射到数据库中该用户的行但是不像只使用普通的旧整数用户ID(坏)就不能破解.然后,当用户访问您的站点时,您可以检查Cookie哈希以获取记住我的令牌,如果找到,则在您的数据库中执行查找并在找到匹配项时将用户登录.这是一种非常常见的做法.
如果您需要/想要在客户端cookie中存储纯文本值,但又不希望用户能够使用这些值,只需将该值的哈希值存储在随播cookie中,并将哈希值加入某些未知值给用户.然后,您只需计算从客户端cookie接收的明文值的盐渍哈希值,并将其与从客户端cookie传递的哈希值进行比较.如果匹配,你可以相信它.