不成熟的设计
一开始,我是从字面意思来进行设计的,即user勾选“记住我”后,客户端对pwd进行加密并保存在本地,然后下一次登录的时候客户端将pwd解密成明文,再submit。这是我最初想到的简单设计,即“记住我”=“保存口令”。
要说安全性,我这个设计完全在前端实现,后端是没有参与的,我的认知是勾选了pwd会加密存储,不勾选不存储,一次性登录验证而已。切记:前端不能存储pwd明文,密文也是不行的
安全的设计
“记住我”是维持cookie的登录状态,需要后端参与的,即Set-Cookie设置到期时间,前端在有效期内,可以一直携带cookie进行登录,后端要验证cookie是否有效。