我有一个要接管的现有站点,现在它将当前登录用户的 id 存储在会话变量中(如果完全登录 - 否则我确定它是空字符串或null 什么的)。
客户现在希望,在某人登录后,无限期地“保持”他们在该计算机上的登录。
我相信 ASP.net 会话的最大空闲时间为 1 天。网站在Flash部分写得不是很好(整个前端都是flash),flash会处理登录,然后,只要flash没有重新加载,假设用户仍然“登录” .
我认为我的解决方案是还存储一个带有一些 GUID 值的客户端 cookie,并在数据库中保存相关的用户 ID……有点像一个永不过期的会话。因此,当页面加载时,我可以检查我的 cookie,使用它从数据库中选择用户 ID,如果我们找到一个,然后设置会话值表示用户 23 已登录。
有人认为这种观点有任何问题吗?你会推荐一些不同的东西吗?我真的不想重构一堆现有的代码,而只是把它放在上面......
PS——安全并不是真正的问题。他们让人们登录的唯一原因是我们可以跟踪一个人的订单,但没有钱通过这个网站转手。也没有用户可以查看或编辑的个人信息。