码迷,mamicode.com
首页 > Web开发 > 详细

onethink中的用户登录session签名

时间:2019-03-08 13:56:21      阅读:225      评论:0      收藏:0      [点我收藏+]

标签:数据   函数   增加   控制   nbsp   存储   ssi   span   mem   

用户登录签名问题,即防止伪造登录session,增加一个用户登录数组的加密签名

 

onethink的登录控制,先调用UC表中(UC表也是存储在网站或本地的数据库中的),确认登录信息。如果UC表登录成功,则判断用户表(member),传入的是用户的uidsession记录uid,username,last_login_time这三个字段构成的数组。session标识为:user_auth

 

接着session记录调用公共函数data_auth_sign签名后的数组session标识为:user_auth_sign

 

在公共函数is_login函数中,

$user = session(user_auth);

session(user_auth_sign)==data_auth_sign($user);

 

这样做的好处是什么呢?这样可以防止模拟session模拟登陆,也就是说如果伪造了session,也就是说,如果模拟session的话,那么还要模拟一份user_auth_sign,而user_auth_sign的加密方式,不为人知。

 

tip:session可以传入和记录数组的。

 

onethink中的用户登录session签名

标签:数据   函数   增加   控制   nbsp   存储   ssi   span   mem   

原文地址:https://www.cnblogs.com/wgphp/p/10495350.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!