84669 人学习
152542 人学习
20005 人学习
5487 人学习
7821 人学习
359900 人学习
3350 人学习
180660 人学习
48569 人学习
18603 人学习
40936 人学习
1549 人学习
1183 人学习
32909 人学习
一般的做法是cookie里面存账号密码 但是这样不安全 有没安全的做法呢
光阴似箭催人老,日月如移越少年。
首先,登录成功了之后,随机生成一个MD5的hash值token(32位或者64位);
然后,把这个token存入当前用户的表,然后给这个用户增加一个token字段和last_login_time字段;
把这个token返回让浏览器的cookie存储,设置一个最长时常,比如30天;
这三个过程的主要作用就是,last_login_time可以检查过期时间,过期时间到了之后,就更新这个token,另外,只要用户通过这个token登录成功就进行更新token,这样就能尽可能的保证安全。
每次用户访问网站的时候,检查cookie里是否有token,如果有token就去数据库查询数据,如果查到就直接登录成功了,也就省去了用户名和密码验证登录的阶段。
整套思想是这样,你也可以让前端把token存入localstorage
用jwt token的方式,浏览器的存token。
具体可以看看下面两个文章
jwt-vs-oauth-authentication , jwt
不要用cookie存帐户密码,存一个记住登陆的flag,最后是与上次登陆的时间, 以及生成的key, 拼成一个加密串。然后存到cookie中。然后每次登陆的时候查看是否有这个cookie.有的话进行解密。然后可以解决这个串进行校检。如果正常直接给予登陆即可。
cookie是将密码放到本地,session是将密码放在服务器。相对来说session比较安全。但是cookie处理的好的话也是很安全的。
首先,登录成功了之后,随机生成一个MD5的hash值token(32位或者64位);
然后,把这个token存入当前用户的表,然后给这个用户增加一个token字段和last_login_time字段;
把这个token返回让浏览器的cookie存储,设置一个最长时常,比如30天;
这三个过程的主要作用就是,last_login_time可以检查过期时间,过期时间到了之后,就更新这个token,另外,只要用户通过这个token登录成功就进行更新token,这样就能尽可能的保证安全。
每次用户访问网站的时候,检查cookie里是否有token,如果有token就去数据库查询数据,如果查到就直接登录成功了,也就省去了用户名和密码验证登录的阶段。
整套思想是这样,你也可以让前端把token存入localstorage
用jwt token的方式,浏览器的存token。
具体可以看看下面两个文章
jwt-vs-oauth-authentication , jwt
不要用cookie存帐户密码,存一个记住登陆的flag,最后是与上次登陆的时间, 以及生成的key, 拼成一个加密串。然后存到cookie中。
然后每次登陆的时候查看是否有这个cookie.有的话进行解密。然后可以解决这个串进行校检。如果正常直接给予登陆即可。
cookie是将密码放到本地,session是将密码放在服务器。相对来说session比较安全。但是cookie处理的好的话也是很安全的。