一种基于redis的登录态的设计与实现

栏目: 数据库 · Redis · 发布时间: 4年前

内容简介:本文浅析一种可行的、实现简单的登录态方案。登录态几乎是所有系统都要考虑的问题,旨在维护用户登录之后的状态。 “用户登录”这个功能已经发展很多年了,伴随着“用户登录”的演进,登录态的实现也在不断完善。从最简单的在url后加一个参数作为标记,到现在大型站点的SSO, 登录态方案从单应用单机到多应用集群,不断满足不同架构的需求,也不断满足安全方面的需求。由于用户登录功能和登录态涉及的面非常广,比如密码的传输和存储、session共享、SSO、网络安全、第三方授权登录等,笔者见识尚浅,无法进行全面分析, 故本文仅就

1.前言

本文浅析一种可行的、实现简单的登录态方案。登录态几乎是所有系统都要考虑的问题,旨在维护用户登录之后的状态。 “用户登录”这个功能已经发展很多年了,伴随着“用户登录”的演进,登录态的实现也在不断完善。从最简单的在url后加一个参数作为标记,到现在大型站点的SSO, 登录态方案从单应用单机到多应用集群,不断满足不同架构的需求,也不断满足安全方面的需求。

由于用户登录功能和登录态涉及的面非常广,比如密码的传输和存储、session共享、SSO、网络安全、第三方授权登录等,笔者见识尚浅,无法进行全面分析, 故本文仅就“登录态在服务器端的维护”一点进行阐述,上述方面不在本文讨论范围之内。

一种基于 <a href='https://www.codercto.com/topics/18994.html'>redis</a> 的登录态的设计与实现

2.功能点

  • 维持状态

这是登录态最基本的功能。

  • 时效

登录态需要有时效,不能无限期处于登录状态中。

  • 安全

登录态需要防止伪造或窃取。

  • 互斥

登录态需要在同类型客户端中实现互斥登录,比如pc上只能允许最后一次登录有效,app类似,但是pc和app的登录不能互相影响,做到隔离。

  • 强制失效

用户修改密码,或者找回密码,需要强制所有客户端的登录态失效。

3.实现

此处仅给出基本方案,以及重要部分的代码实现。方案的最优化应与具体业务挂钩,故不讨论最优解,不追求完美。

a) 维持状态

想要维持状态,客户端请求必须带上sessionId。可以是在

5.参考文献

[1] 陈皓. 你会做WEB上的用户登录功能吗? [EB/OL].https://coolshell.cn/articles/5353.html,2019-06-19.

[2] 浅析 java 中的语法糖 [EB/OL].https://www.cnblogs.com/qingshanli/p/9375040.html,2019-06-18.


以上所述就是小编给大家介绍的《一种基于redis的登录态的设计与实现》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

最优化理论与方法

最优化理论与方法

袁亚湘 / 科学出版社 / 1997-1 / 38.00元

《最优化理论与方法》全面、系统地介绍了无约束最优化、约束最优化和非光滑最优化的理论和计算方法,它包括了近年来国际上关于优化研究的最新成果。《最优化理论与方法》在经济计划、工程设计、生产管理、交通运输等方面得到了广泛应用。一起来看看 《最优化理论与方法》 这本书的介绍吧!

随机密码生成器
随机密码生成器

多种字符组合密码

SHA 加密
SHA 加密

SHA 加密工具

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具