保持登录

用户不是每次来你的网站都想输入账号密码,保持登录目前已经成了一个除了高安全级别之外系统的必备功能了,但是如何设计保持登录功能呢,最原始的做法是把用户名作为cookie存放到客户端,下次登录的时候读取便是,但是如果浏览器端的cookie被人复制走,也能登录,所以这种方法是很不安全的,参见了知名博客的[url=http://coolshell.cn/articles/5353.html]这篇博客[/url]后,有点思路,但是具体部分还是臃肿,token、序列号、ip搞了一堆,安全吗?我不敢说,我只是认为事情没必要做的这么复杂,安全的网站如支付宝索性就不提供保持登录功能,对安全不是很重视的就认为从该IP登录的就是安全的。、

因此我在初次设计在输入账号密码登录时先生成一个独一无二的uuid,作为cookie存放到浏览器端,同时把IP、UUID和用户ID存放到服务器端,不同的IP上的cookie可以保存多份,这样用户在多设备上登录也能使用保持登录功能,同时保存的是cookie的产生时间和预先设定的cookie销毁时间,如果用户选择退出或者cookie到期后,则删除对应的cookie,对于cookie到期则选择每天定点判断有哪些cookie到期,因为cookie超期几个小时并不会产生十分严重的影响,故可以选择在凌晨执行定点任务删除cookie。

同时还要注意在修改密码、付款等安全操作时需要用户再次输入密码。

开发临时笔记

你可能感兴趣的:(web,web)