我正在考虑添加记住我的功能(在这个优秀的Railscast之后),但是我有点担心安全性。
如果有人从另一个用户那里获得了cookie,会发生什么,这是否会归结为他们可以访问他们所有的帐户,因为他们基本上是登录的?(用户cookie被窃取的几率有多大?)
如果用户有一个正常的会话(当他们关闭浏览器时结束)并且cookie只记住该用户会更好吗?id,但是当他们返回时不将他们重新登录,只是自动填写登录表单的用户名(或电子邮件)部分,因此他们只需要输入密码即可继续。这对我来说似乎更安全,但也许我有点太偏执了?
绝对安全的系统将无法使用。可用性好的系统通常不太安全。
"记住我"是典型的可用性功能,它降低了安全性。
在这种情况下,如果你做金融交易,我宁愿不实现这个功能(因为安全更重要)。
在这种情况下,如果你做一个网站,你可以发布小猫的照片,我认为这是可以的。
同样,你可以制作有时间限制的饼干,所以你的"记住我"功能不会记住你超过一天。这将提高可用性,但将保持系统的合理安全。