大用户数据库的登录登出技术


PHP - Login Logout Technique for Big User DataBase

我正在创建一个具有php登录功能的网站。通常我使用"会话"来存储登录用户数据。我只是担心这个疗程使用起来不安全。请建议。

谢谢。

我们使用一个mysql表userIn来处理会话。
用户登录时,userIn (userID, sessionID, date, IP)上插入一行客户端存储的cookie只有sessionID,你可以

  • 删除同一用户之前打开的会话
  • 检查每次呼叫的IP(如果有人抓取了sessionID,他就不能以用户的名义通信)
  • 可以删除userIn中的行,以便按时间(例如:8小时左右)

工作原理:

  • 登录:INSERT INTO userIn SET userID='', sessionID='', date=NOW(), IP='$REMOTE_ADDR'
    然后设置cookie: SetCookie("MySession", $sessionID);

  • 每次页面加载:SELECT * FROM userIn WHERE sessionID='$_COOKIE[MySession]' AND IP='$REMOTE_ADDR'(并可选择更新userIn中的日期)