全网唯一标准王
(19)中华 人民共和国 国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202111350834.1 (22)申请日 2021.11.15 (71)申请人 广东亿迅科技有限公司 地址 510000 广东省广州市海珠区 阅江西 路218号广州国际媒体港写字楼西港 12-14楼 (72)发明人 胡世敏 连伟灿 王敏 丁明  廖小文  (74)专利代理 机构 广州海心联合专利代理事务 所(普通合伙) 44295 代理人 冼俊鹏 (51)Int.Cl. H04L 9/40(2022.01) H04L 9/32(2006.01) G06F 9/54(2006.01) (54)发明名称 一种基于redis缓存的分布式会话共享方法 及系统 (57)摘要 本发明公开了一种基于redi s缓存的分布式 会话共享方法, 涉及通信技术, 解决了难以满足 多用户使用请求需求的技术问题。 获取用户的登 录信息, 通过能共享redi s集群数据且基于shiro 框架的hash拦截认 证机制, 校验所述 登录信息中 的hash值, 并对校验通过的登录信息进行授权, 使其直接进入访问服务。 本发明还公开了一种基 于redis缓存的分布式会话共享系统。 本发明实 现了多用户信息数据处理, 能有效的保证数据的 一致性, 且能减少数据格式不统一的处 理。 权利要求书1页 说明书4页 附图2页 CN 114070616 A 2022.02.18 CN 114070616 A 1.一种基于redis缓存的分布式会话共享方法, 其特征在于, 获取用户的登录信息, 通 过能共享redis集群数据且基于shiro框架 的hash拦截认证机制, 校验所述登录信息中的 hash值, 并对校验通过的登录信息进行授权, 使其 直接进入访问服 务。 2.根据权利要求1所述的一种基于redis缓存的分布式会话共享方法, 其特征在于, 所 述hash拦截认证机制, 具体包括, 拦截所述登录信息, 读取 所述登录信息中ses sion会话的主题信息; 判断所述主题信息是否存在; 若所述主题信息存在, 则继续校验所述登录信息中是否 存在hash值; 若所述登录信息中存在hash值, 则所述登录信息校验通过; 否则, 向redis集群发起会 话信息共享, 根据所述登录信息获取与其相对应的hash值, 并将所述hash值写入到登录信 息中, 再允许 所述用户进入访问服 务; 若所述主题信息不存在, 新建一session会话的主题信息, 并向redis集群发起会话信 息共享, 根据所述登录信息获取与其相对应的hash值, 并将所述hash值写入到登录信息中, 再允许所述用户进入访问服 务。 3.根据权利要求2所述的一种基于redis缓存的分布式会话共享方法, 其特征在于, 若 所述登录信息中不存在hash值, 首先提示所述用户是否进 行登录; 若 所述用户不进 行登录, 则返回登录页面; 否则将向所述redis集群发起会话信息共享。 4.根据权利要求2所述的一种基于redis缓存的分布式会话共享方法, 其特征在于, 所 述登录信息被准入访问服务后, 获取所述登录信息的信息内容, 并将其存储至所述redis集 群中。 5.根据权利要求4所述的一种基于redis缓存的分布式会话共享方法, 其特征在于, 所 述登录信息包括用户账号信息以及岗位账号信息 。 6.根据权利要求5所述的一种基于redis缓存的分布式会话共享方法, 其特征在于, 所 述登录信息的获取方法为, 用户在登录界面输入的用户账号信息通过校验后, 读取所述用 户账号信息, 同时所述登录页面跳转至用户岗位列表, 并在所述用户输入的岗位账号信息 通过校验后, 读取 所述岗位账号信息 。 7.根据权利要求6所述的一种基于redis缓存的分布式会话共享方法, 其特征在于, 获 取所述登录信息后, 根据所述登录信息遍历redis集群, 查询所述redis集群中是否存在与 登录信息相对应的hash值认证; 若不存在, 则跳转至登录界面。 8.根据权利要求5所述的一种基于redis缓存的分布式会话共享方法, 其特征在于, 存 储至所述redis集群中的信息内容, 通过session的key生成, 将所述用户账号信息、 岗位账 号信息以及hash值整合为一key缓存数据; 将所述key缓存数据的格式统一为json对象, 进 行序列化存 储。 9.根据权利要求2所述的一种基于redis缓存的分布式会话共享方法, 其特征在于, 所 述hash拦截认证机制通过拦截器进行处 理。 10.一种基于redis缓存的分布式会话共享系统, 其特征在于, 包括shiro安全鉴权拦截 模块和redis集群模块; 所述shiro安全鉴权拦截模块应用如权利要求1 ‑9任一项所述的分 布式会话共享方法对用户的登录信息进行授权, 使其进入访问服务; 所述redis集群模块用 于存储所述登录信息的信息内容。权 利 要 求 书 1/1 页 2 CN 114070616 A 2一种基于redis缓存的分布式会话共享方 法及系统 技术领域 [0001]本发明涉及通信技术, 更具体地说, 它涉及一种基于r edis缓存的分布式会话共享 方法及系统。 背景技术 [0002]在集群容器化部署应用场景下, session共享对于分布式系统的一个用户的多次 请求路由到不同容器应用机器上, 不可能每次请求对应容器应用里都生成一个session而 相互之间没有联系, 而是希望一个用户登陆一次就有一共享信息的session。 每次请求都会 使用这一个session的信息, 以保证 登录信息的一致性。 当在客户端浏览器存储cookie的会 话ID唯一, 则若在同一个浏览器要同时再次登录不同用户时, 会话信息会覆盖掉前一个登 录的会话信息, 导 致不能存在一个浏览器中同时用多个用户访问。 [0003]例如, 在企业内部每个用户都授予不 同岗位权限。 在需要用不 同用户或同用户不 同岗位做数据和业务对比参照时, 通常需要打开多用户登录或一个用户不同岗位权限登录 查看业务和参照对比数据。 在分布式系统环境下就需要设计提供既能支持分布式会话共享 和存储集中机制, 又能对不同场景的使用提供 更方便更有效的会话保持和会话隔离 机制。 [0004]因此, 针对目前的分布式多应用部署的多用户同浏览器登录业务需求, 现有 shiro 会话共享的一个会话多用户情况 下, 存在以下问题。 [0005](1)功能上: 现有会话共享, 同浏览器只能保持最后登录用户信息 。 [0006](2)数据一 致性: 同浏览器登录后, 会覆盖前一个用户信息 。 [0007]总的来说, 现有的session会话共享处理方式, 难以满足多用户使用请求需求。 所 以, 需要引入可支持多用户同客户端 使用的共享机制。 发明内容 [0008]本发明要解决的技术问题是针对现有技术的不足, 提供一种基于redis缓存的分 布式会话共享方法及系统, 实现了多用户信息数据处 理, 能有效的保证数据的一 致性。 [0009]本发明所述的一种基于redis缓存的分布式会话共享方法, 获取用户的登录信息, 通过能共享redis集群数据且基于shir o框架的hash拦截认证机制, 校验 所述登录信息中的 hash值, 并对校验通过的登录信息进行授权, 使其 直接进入访问服 务。 [0010]作进一步的改进, 所述hash拦截认证机制, 具体包括, [0011]拦截所述登录信息, 读取 所述登录信息中ses sion会话的主题信息; [0012]判断所述主题信息是否存在; 若所述主题信息存在, 则继续校验所述登录信息中 是否存在hash值; [0013]若所述登录信息中存在hash值, 则所述登录信息校验通过; 否则, 向redis集群发 起会话信息共享, 根据所述登录信息获取与其相 对应的hash值, 并将所述hash值写入到登 录信息中, 再允许 所述用户进入访问服 务; [0014]若所述主题信息不存在, 新建一session会话的主题信息, 并向redis集群发起会说 明 书 1/4 页 3 CN 114070616 A 3

.PDF文档 专利 一种基于redis缓存的分布式会话共享方法及系统

文档预览
中文文档 8 页 50 下载 1000 浏览 0 评论 309 收藏 3.0分
温馨提示:本文档共8页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 一种基于redis缓存的分布式会话共享方法及系统 第 1 页 专利 一种基于redis缓存的分布式会话共享方法及系统 第 2 页 专利 一种基于redis缓存的分布式会话共享方法及系统 第 3 页
下载文档到电脑,方便使用
本文档由 人生无常 于 2024-03-18 20:58:03上传分享
友情链接
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。