php – 销毁特定用户的所有会话
我正在使用Codeigniter 3作为我的应用程序,为了更高的安全性,我想为用户提供销毁他所有会话的选项.
为什么?因为用户在不同设备上登录时可能有多个活动会话.如果一个设备或帐户被劫持,则用户应该有可能销毁其所有活动会话,并且被劫持的帐户/设备被CI应用程序强制注销. 使用Codeigniter和sess_time_to_update配置并不是那么容易.因为在特定时间之后,会话将使用新的会话ID重新生成. Destroying a specific session in Code Igniter只是解决方案的一半,因为在会话重新生成时,用户ID列不会填充用户ID. 目标简短: 感谢您的提示和帮助 解决方法
理想情况下,您可能希望自己创建自定义函数. codeignighter就像bootignrap,因为codeignighter是php,bootstrap是css.简单的PHP代码,是的,它在图书馆中有PHP功能很方便,但大多数php编码器无论如何都这样做.我个人不共享我的自定义函数名称,因为它存在安全风险.但是,将会话保持太长时间也存在安全风险.对于每个用户连接,$_SERVER数组中都有一个会话cookie.您需要做的是将这些cookie存储在db表中,然后将这些cookie条目移动到删除提示(这将是另一个表),然后使用Java调用命令(按时间间隔)以查看是否cookie在删除提示中,如果是这样它将通过命令取消设置cookie:
setcookie("PHPSESSID","",time()-3600,"/"); ////then kick them out: session_destroy(); header('Location: index.php'); exit(); 在我的一个系统上,我提出了一个不同的cookie系统,它基于连接和其他客户端变量.如果它没有看到从那里解析的任何检查(cookie,IP地址,客户端主机名和其他一些),它将添加不匹配到表的ip地址(用于管理员审计),然后添加该IP地址为防火墙中的拒绝IP地址,然后将其重定向到FBI网站.我也在那个web服务器上我在apache配置中运行一个特殊的代码,它不接受vpn连接,以便那些认为可以隐藏在vpn后面的黑客,他们甚至无法访问服务器(那里的Web浏览器超时.大声笑) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |