认证与会话管理
- 建立用户账号,用户标识为唯一。
- 至少通过密码的身份鉴别技术,密码需强制具备一定的长度、复杂度,采用加密(加盐)保存,密码需强制定期修改。
- 禁止用户重新注册。
- 专用的登录模块对用户身份进行校验;通过证书登录;限制登录失败次数;登录超时限制。
- 单因素认证
- 强密码规则及校验
- 密码存储采用不可逆的加密算法(MD5、SHA-1)+ S alt,使用方法如MD5(username+password+Salt), 其中Salt为随机字符串,并妥善保存。
图 单因素认证
- 多因素认证
- 在密码的基础上增加验证码或滑块验证。
图 多因素认证(口令+滑块)
- 会话管理
- 用户token(SessionID)保存在Cookie中,为了防止token被劫持,在Cookie中增加Httponly。
- 设置会话超时时间,超过预定的时间,强制销毁Session。
- 同一时间、同一用户仅有一个Session有效,用户重新登录则销毁先前的Session并生成新的Session。
图 会话管理
欢迎关注技术公众号:架构师成长营