pc端和微信端登录的时候,一般我们都需要做记住密码这个功能,常用的技术手段就是将用户名和密码保存到本地浏览器cookie中。
但是在大脑中总有一个声音告诉我说:cookie不安全.....
那怎么办呢,经过一天的探究,最终得到了结论:
cookie 是保存在本地的一个文件,只要获取到了cookie文件,那么就很难避免密码的安全性。各位大神都只是不断提高cookie的安全性。
下面这篇别人的文章对cookie的各种情况进行了探究:
http://www.cnblogs.com/batsing/p/4878832.html
最后自己想到了一套认为比较安全的方案:
①采用htts协议。
②采用传统cookie方式。
pc端:采用将用户名和密码与mac地址一起,加密到cookie中,加密算法写在js中,js进行压缩加密。
在登录的时候,获取到cookie中的密文,然后到后台去验证mac地址。
微信端:采用用户名与微信的poenId来进行在后台绑定,当用户正常登陆或者是通过cookie登陆的时候,都验证这个用户名和传过来的微信openId是否一致。如果一致,并密码正常,那么就正常登陆。否则不允许登陆,这样就保证了即时别人拿到了手机浏览器中的cookie,也不能进行登陆。
当用户变更了微信的时候,需要找管理员重新将用户名和新的微信的openId进行绑定。
获取微信的openId可以参考这个:http://blog.csdn.net/hinstenyhisoka/article/details/50516918
本文转自建波李 51CTO博客,原文链接:http://blog.51cto.com/jianboli/1971830,如需转载请自行联系原作者