CodeIgniter Auth系统

amr*_*amr 2 php authentication codeigniter

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

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

Noo*_*ilk 5

"记住我"是通过cookie实现的.

您的cookie应采用"RememberMe = userid:[something-confirming-authentication]"的形式

因此,困难的部分是获得'某事 - 确认 - 认证'.这最好实现为:

 sha256(salt + userid)
Run Code Online (Sandbox Code Playgroud)

'salt'是一系列随机字符,针对用户生成并与数据库一起存储.

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

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