跳至主要內容

登录设计

HeChuangJun约 382 字大约 1 分钟

手机扫码pc登录

访问PC端二维码生成页面,PC端请求服务端获取二维码ID
服务端生成二维码ID ,保存过期时间,状态等到Redis
PC获取二维码ID并生成二维码。
手机端扫描二维码,获取二维码ID。
手机端将手机端token和二维码ID发送给服务端,确认登录。
服务端校验手机端token,根据手机端token和二维码ID生成 PC端token
PC端通过轮询方式请求服务端,通过二维码ID获取二维码状态,已成功则返回PC端token,登录成功

phonescancode.jpg
phonescancode.jpg

单点登录

第一次请求app server,fillter判断有没有局部session登录状态和token,301重定向sso带上请求url参数
sso通过filter和全局session判断是否登录,未登录跳到登录页面并返回请求url参数,输入用户名密码和url参数请求登录
登录成功创建全局会话和令牌token,301重定向到app server带上token
app server判断没有局部session则带上token、url访问sso校验有全局session ,重定向到app server返回登录成功
app server根据结果创建session

微服务session共享

Spring Session+Redis实现。将微服务的session保存在Redis,微服务都在Redis读写session ,Spring Session基于Spring中的代理过滤器实现