我对我正在计划的会话的使用感到有些困惑。未登录的用户访问我的网站并上传文件。此用户在其会话期间(使用session_id()设置)控制文件的所有权。但是,要识别用户具有控制权,会话ID将插入数据库以便使用该用户ID进行验证。这是好习惯吗?会话ID有多独特?
答案 0 :(得分:1)
会话ID保证在当前使用的ID空间中是唯一的。基本上,所有当前会话都有唯一的ID。
这意味着您不能仅仅依赖会话ID而不仅仅是会话(当您这样说时,这似乎很明显)。我建议做一些像哈希当前时间和使用它的文件的唯一ID。
答案 1 :(得分:0)
我会创建一个不同的唯一ID,将其存储在会话和数据库中。为了安全起见,一些框架和库会为每个请求重新生成会话ID,因此假设它们在用户会话期间永远不会更改是不好的。你对会话id唯一肯定的是它绝对是唯一的。