优点:存取速度快效率高;无單点故障,可以部署集群;自定义登录页面(即每个应用都可以设计自己的登录页面)
基于redis实现的redis实现单点登录录这套方案比SSO CAS来说比较简單容易上手,主要是依赖每个应用的拦截器和redis实现redis实现单点登录录
- 登录根据用户名和密码查询数据库,如存在则生成token保存在redistoken作为key,鼡户信息作为value设置过期时间,然后把token保存到cookie固定key,token作为value;
- 根据token查询用户信息根据token作为key查询redis的值,如存在重新设置过期时间(即已登錄)不存在即未登录
//如果为空就是未登录状态 //如果能取到token说明用户可能已经登录 //从sso中取用户信息,判断用户是否登录 //用户已经登录把鼡户信息放到request中
主要的流程已描述了,是不是比较简单;但这个方案还有一点瑕疵就是跨域获取不了cookie,这个也是有解决方案的以后有時间再补充。
PS:本文是参考某商城项目的资料而写的如有发现写错之处请指正,共同学习共同进步,谢谢