我有一个$ _SESSION var,用于在用户登录时存储简单,易于调用的识别信息。即使用户未登录,也会记录访问的最后一个文件(如果用户登录,则快速返回到那个页面)。
用户登录
$_SESSION[$userid,$username,$first_name,$lastPage];
用户未登录
$_SESSION[$lastPage];
我主要担心的是未来程序员的安全性和易于理解。
这些选项是否可行,或者我错过了一个更安全的选项,并且对程序员来说非常容易理解?
sessionWrapper
类来模仿$ _SESSION中的值。lastPage
。创建一个sessionWrapper
类,如果给出了这个唯一标识符,则从数据库中提取相关信息。我在这里遗漏了什么吗?在我写这篇文章时,我更接近选项3,但我非常感谢有关最佳实践的任何反馈。
答案 0 :(得分:1)
您是否考虑过为last_page
信息使用Cookie?我假设您不必将所有内容保留在$_SESSION
中。好的,现在是肉丸。如果安全是一个问题,那么$_SESSION
是可以的,但不是最好的。问题可以归结为:
高安全性默认情况下,PHP会话会保存到服务器上的可访问文件中,您可以通过在应用程序中包含一个封装良好的数据库来缓解这种情况。只要它是一个非常简单的封装类,那么你就好了。您的选项3 是一个很好的解决方案。
低安全性:如果您不愿意为您的个人$_SESSION
实施而放弃KLOC,我认为您现在可以保持相关信息安全,并选择不太重要的信息的Cookie:last_page
是与用户关联但未识别的信息,因此请将它们分开。
从我的观点来看,你不会错过任何东西,你只需要做出决定并坚持下去