【问题标题】:CodeIgniter Auth SystemCodeIgniter 身份验证系统
【发布时间】:2009-08-23 09:28:01
【问题描述】:

我已经编写了自己的模型来处理身份验证,但我只是想知道如何实现“记住我”功能?

要登录用户,我只需设置以下用户数据:UserID(int), LoggedIn(bool)

【问题讨论】:

    标签: php authentication codeigniter


    【解决方案1】:

    “记住我”是通过 cookie 实现的。

    您的 cookie 格式应为“RememberMe=userid:[something-confirming-authentication]”

    因此,困难的部分是获得“确认身份验证”。这最好实现为:

     sha256(salt + userid)
    

    “salt”是针对用户生成的一系列随机字符,并与用户一起存储在数据库中。

    然后,您可以确认当它存在时(您拥有自己在服务器上计算此哈希的数据,因此您这样做)您将用户标记为已登录。

    为了进一步提高安全性,您可能还希望使用 aes256 加密 cookie 的这个组件,并在尝试检查哈希之前解密。

    【讨论】:

    • 这几乎就是我脑海中的想法,减去了“确认验证”部分。感谢您的帮助:)
    【解决方案2】:

    加密用户 id 和登录状态并将它们存储在 cookie 中。

    【讨论】:

      猜你喜欢
      • 2012-12-09
      • 1970-01-01
      • 1970-01-01
      • 2012-04-12
      • 2011-03-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-05-23
      相关资源
      最近更新 更多