Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/265.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
加载特定用户PHP/SQL的所有活动会话_Php_Sql_Session - Fatal编程技术网

加载特定用户PHP/SQL的所有活动会话

加载特定用户PHP/SQL的所有活动会话,php,sql,session,Php,Sql,Session,我正在将会话存储到SQL数据库中。因此,我想加载特定用户的所有活动会话,我可以在users表中创建一个字段,其中包含会话ID数组,该数组在特定用户每次登录/注销时更新。每次创建或销毁会话时 问题是DB中会话中的数据是加密的,因此在不进行反加密的情况下,无法将会话链接到特定用户,因此直接链接数据可能会导致安全问题,如果有人认为无法编辑用户表,并且密码是单向加密的,如何转储用户表,并将超级用户与活动会话ID关联,他们可能会以某种方式劫持它,对吗 有没有其他方法可以做到这一点?会话的数据可能会被加密,

我正在将会话存储到SQL数据库中。因此,我想加载特定用户的所有活动会话,我可以在users表中创建一个字段,其中包含会话ID数组,该数组在特定用户每次登录/注销时更新。每次创建或销毁会话时

问题是DB中会话中的数据是加密的,因此在不进行反加密的情况下,无法将会话链接到特定用户,因此直接链接数据可能会导致安全问题,如果有人认为无法编辑用户表,并且密码是单向加密的,如何转储用户表,并将超级用户与活动会话ID关联,他们可能会以某种方式劫持它,对吗


有没有其他方法可以做到这一点?

会话的数据可能会被加密,但会话ID不会被加密,因为这是一个句柄,也就是让您知道他们是谁的指针。您可以将该句柄/ID存储在某个地方,但是如果您要创建一个新表来存储它,请不要忘记存储一些元数据,比如它们的IP,会话创建时,上次访问时,这些都是有价值的安全花絮。PS:别忘了,一个NAT背后可以有几十或几百人,所有人都在同一个IP下,所以不要将其用作任何一种唯一标识符。我想我明白你的意思,但是,如果我理解正确,要实现我想要的目标,我就必须通过所有的会议,理论上可能有数千次,然后找出哪个会议属于世卫组织。我在这里的观点是做一些类似Facebook的事情,向您显示您登录的设备,并允许您在创建会话时将用户名或用户ID与数据库中的特定记录相关联。这是在身份验证过程之后创建会话的正确方法。为了提高安全性,请按照TravisO和用户代理的建议存储用户IP地址。考虑在特定的非活动时间等情况下,将登录时间存储到适当的超时会话等。