关于项目安全的一些事儿
2017-07-27 本文已影响52人
Y先生的领地
1、关于用户注册
不要采用注册完成后就直接跳转界面的做法,注册成功后,可以通过代码进行跳转,不要直接通过get方式进行跳转,或者干脆注册成功后就跳转到登陆界面。
2、关于密码
单纯md5加密的方式是不安全的,容易匹配出来,可以采用md5(($pass+salt)+$pass)
其中salt是数据库中取出来的一个随机的明文字符串,$pass是明文密码,md5加密两次。
具体主流加密方式可以参考:http://www.cmd5.com/ 中的加密类型。
3、登录成功后如何处理?
把用户放入cookie中的做法是不可取的,特别是密码和邮箱。
可以生成一个token放入到cookie中,然后以token为键,以用户json字符串为值,放入到redis数据库中,需要注意的是redis需要设置密码,这样也不安全,如果是内网还好,如果是公网的话,需要用到haproxy(反向代理的一种)。