一种多终端权限管理方法和设备与流程

文档序号:28421511发布日期:2022-01-11 22:18阅读:112来源:国知局
一种多终端权限管理方法和设备与流程

1.本技术涉及计算机技术领域,更具体地,涉及一种多终端权限管理方法和 设备。


背景技术:

2.saas提供商为企业搭建信息化所需要的所有网络基础设施及软件、硬件 运作平台,并负责所有前期的实施、后期的维护等一系列服务,企业无需购 买软硬件、建设机房、招聘it人员,即可通过互联网使用信息系统。saas是 一种软件布局模型,其应用专为网络交付而设计,便于用户通过互联网托管、 部署及接入。
3.saas系统通常以一个系统一套登陆、菜单、权限管理方式去维护整个系 统的权限数据,从而导致不同的模板、不同的系统不能共享同一数据,且用 户进入不同的系统的时候需要单独维护一个用户入口,从而导致开发效率低 下,且容易同样的问题花费多次时间去解决。
4.因此,如何解决多终端时saas系统权限数据不统一,运行成本高是目 前有待解决的技术问题。


技术实现要素:

5.本发明提供一种多终端权限管理方法,应用于saas软件服务化系统中, 用以解决现有技术中多终端时saas系统权限数据不统一,运行成本高的技术 问题。
6.该方法包括:
7.在进入所述系统的终端页后,基于终端入口地址的token令牌获取缓存 的加密登陆数据;
8.基于所述加密登陆数据中的动态路由数据及session storage会话存储中 的路由数据进入所述终端对应的登录页;
9.将所述动态路由数据存储到所述会话存储中,并进入终端登陆成功页。
10.在本技术一些实施例中,在基于终端入口地址的token令牌获取缓存的 加密登陆数据之前,还包括:
11.配置菜单项与各终端的关联关系、菜单项的打开方式、菜单项对应页面 的定位方式。
12.在本技术一些实施例中,基于终端入口地址的token令牌获取缓存的加 密登陆数据,具体为:
13.判断终端入口地址是否存在所述令牌;
14.若是,则对所述令牌进行校验,并获取所述缓存的加密登陆数据;
15.若否,则由所述终端页跳转到预设的统一登录页进行登陆。
16.在本技术一些实施例中,对所述令牌进行校验,并获取所述缓存的加密 登陆数据,具体为:
17.当对所述令牌校验通过时,获取所述缓存的加密登陆数据;
18.当对所述令牌校验未通过时,由所述终端页跳转到预设的统一登录页
19.在本技术一些实施例中,基于所述加密登陆数据中的动态路由数据及sessionstorage会话存储中的路由数据进入所述终端对应的登录页,具体为:
20.判断所述加密登陆数据中的动态路由数据是否存在;
21.若是,则直接通过终端页跳转进入终端登陆成功页;
22.若否,则基于所述会话存储中的路由数据进入所述终端对应的登录页。
23.在本技术一些实施例中,基于所述会话存储中的路由数据进入所述终端对应的登录页,具体为:
24.若所述会话存储中的路由数据存在,则根据diff算法创建所述动态路由数据,并将所述动态路由数据存储到所述会话存储中,并进入终端登陆成功页;
25.若所述会话存储中的路由数据不存在,则由所述终端页跳转到预设的统一登录页进行登陆。
26.在本技术一些实施例中,根据diff算法创建所述动态路由数据,具体为:
27.通过diff算法对本地菜单根据code编码筛选出当前用户可以访问的菜单信息;
28.通过所述可以访问的菜单信息匹配所述用户的权限数据;
29.将每个权限数据生成对应的动态路由数据,以使得当前用户只能访问配置的地址数据,对于其他的地址则统一重定向到404页面。
30.在本技术一些实施例中,通过所述可以访问的菜单信息匹配所述用户的权限数据,具体为:
31.扁平化后台传入的权限树;
32.将后台树中的每一个节点放到temp对象中;
33.通过深度优先遍历前端路由树,然后通过判断temp对象中是否存在当前节点过滤出所述用户的权限数据对应的路由节点。
34.在本技术一些实施例中,所述方法还包括:
35.在进入所述终端登陆成功页后,通过预设指令获取当前页面的所述权限数据。
36.相应的,本发明还提出了一种多终端权限管理设备设备,所述设备包括:
37.获取模块,用于在进入所述系统的终端页后,基于终端入口地址的token令牌获取缓存的加密登陆数据;
38.第一登陆模块,用于基于所述加密登陆数据中的动态路由数据及sessionstorage会话存储中的路由数据进入所述终端对应的登录页;
39.第二登陆模块,用于将所述动态路由数据存储到所述会话存储中,并进入终端登陆成功页。
40.通过应用以上技术方案,在进入所述系统的终端页后,基于终端入口地址的token令牌获取缓存的加密登陆数据;基于所述加密登陆数据中的动态路由数据及sessionstorage会话存储中的路由数据进入所述终端对应的登录页;将所述动态路由数据存储到所述会话存储中,并进入终端登陆成功页,从而解决了在saas系统多终端环境下菜单组件、菜单项、认证方式、权限控制不同的标准规范问题,提高了菜单融合效率,降低成本。
附图说明
41.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所 需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本 申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提 下,还可以根据这些附图获得其他的附图。
42.图1示出了本发明实施例提出的一种多终端权限管理方法的流程示意 图;
43.图2示出了本发明实施例提出的一种多终端权限管理设备的 结构示意图。
44.具体实施方式
45.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行 清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而 不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做 出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
46.本技术实施例提供一种多终端权限管理方法,应用于saas软件服务化系 统中,如图1所示,包括以下步骤:
47.步骤s101,在进入所述系统的终端页后,基于终端入口地址的token令 牌获取缓存的加密登陆数据。
48.本实施例中,如背景技术所述,saas系统通常以一个系统一套登陆、菜 单、权限管理方式去维护整个系统的权限数据,从而导致不同的模板、不同 的系统不能共享同一数据,且用户进入不同的系统的时候需要单独维护一个 用户入口,从而导致开发效率低下,且容易同样的问题花费多次时间去解决。 因此本方案中,提供一种多终端权限管理方法,用以解决上述问题。
49.在进入到终端页面时,获取终端在入口地址基于token获取缓存的加密 登录数据,从而防止用户信息泄露,也可以保证当前用户历史登录信息不被 破解,在不同的终端中由专人配置定义每一个终端的统一认证方式和对应的 入口地址,其中认证方式支持授权码模式、授权码简单模式、密码授权模式 和客户端模式,在进入终端页面时,会首先获取该终端的专用加密登陆数据。
50.为了获取加密登陆数据,在本技术的一些实施例中,在基于终端入口地 址的token令牌获取缓存的加密登陆数据之前,还包括:
51.配置菜单项与各终端的关联关系、菜单项的打开方式、菜单项对应页面 的定位方式。
52.具体的,开发人员维护和配置融合菜单及菜单项,包括菜单项与各系统 的关联关系、菜单项的打开方式(跳转或是新建)、菜单项对应页面的定位 方式(路由或者相对地址或者绝对地址),具体配置方式在此不做限制,预 先设置好对应关系,方便后续认证和确定用户的权限数据。
53.为了获取加密登陆数据,在本技术的一些实施例中,基于终端入口地址 的token令牌获取缓存的加密登陆数据,具体为:
54.判断终端入口地址是否存在所述令牌;
55.若是,则对所述令牌进行校验,并获取所述缓存的加密登陆数据;
56.若否,则由所述终端页跳转到预设的统一登录页进行登陆。
57.在进入到终端页面时,获取终端在入口地址基于token获取缓存的加密 登录数据,由于可能存在令牌不存在的情况,所以需要判断终端入口地址是 否存在所述令牌,如果不存在的话,则需要将页面转到统一登录页,该统一 登录页相当于游客页面或验证失败后在此登陆,对于未登录或者登录信息失 效的情况则统一进入登录地址且附带当前跳转链接,一般情况下每一个终端 都存在一个登录地址,那么在终端非常多的情况下,我们就需要对每一个终 端都开发一套登录认证方式,对于这种情况我们使用统一认证方式,即不需 要每一个终端开发认证,也通过统一配置的方式使得用户可以使用同一个登 录地址进入不同的终端,如果存在则对所述令牌进行校验,并获取所述缓存 的加密登陆数据。
58.为了获取加密登陆数据,在本技术的一些实施例中,对所述令牌进行校 验,并获取所述缓存的加密登陆数据,具体为:
59.当对所述令牌校验通过时,获取所述缓存的加密登陆数据;
60.当对所述令牌校验未通过时,由所述终端页跳转到预设的统一登录页。
61.具体的,同样需要检验是否令牌校验成功,如果校验失败的话,同样要 将页面转到统一登录页,进行登陆,如果校验成功,则获取用户的加密登陆 数据。
62.步骤s102,基于所述加密登陆数据中的动态路由数据及session storage 会话存储中的路由数据进入所述终端对应的登录页。
63.本实施例中,获取到所述加密登陆数据后,进一步根据加密登陆数据中 的动态路由数据及session storage会话存储中的路由数据进入所述终端对应 的登录页,根据动态路由数据和会话存储中的路由数据的不同,登陆的流程 与步骤也有所不同。
64.为了进入所述终端对应的登录页,在本技术一些实施例中,基于所述加 密登陆数据中的动态路由数据及session storage会话存储中的路由数据进入 所述终端对应的登录页,具体为:
65.判断所述加密登陆数据中的动态路由数据是否存在;
66.若是,则直接通过终端页跳转进入终端登陆成功页;
67.若否,则基于所述会话存储中的路由数据进入所述终端对应的登录页。
68.本实施例中,首先判断所述加密登陆数据中的动态路由数据是否存在, 如果存在的话,进行终端页跳转,并将所述动态路由数据存储到所述会话存 储中,并进入终端登陆成功页,向用户展示对应的权限,如果不存在的话, 需要进一步基于所述会话存储中的路由数据进入所述终端对应的登录页。
69.为了进入所述终端对应的登录页,在本技术一些实施例中,基于所述会 话存储中的路由数据进入所述终端对应的登录页,具体为:
70.若所述会话存储中的路由数据存在,则根据diff算法创建所述动态路由 数据,并将所述动态路由数据存储到所述会话存储中,并进入终端登陆成功 页;
71.若所述会话存储中的路由数据不存在,则由所述终端页跳转到预设的统 一登录页进行登陆。
72.具体的,如果所述会话存储中的路由数据存在,则根据diff算法创建所 述动态路由数据,并将所述动态路由数据存储到所述会话存储中,并进入终 端登陆成功页。
73.渲染真实dom的开销很大,有时候我们修改了某个数据,直接渲染到 真实dom上会引起整个dom树的重绘和重排。我们希望只更新我们修改的 那一小块dom,而不是整个dom,diff算法就帮我们实现了这点。diff算法的 本质就是:找出两个对象之间的差异,目的是尽可能做到节点复用。此处说 到的对象,指的其实就是vue中的virtual dom(虚拟dom树),即使用js对 象来表示页面中的dom结构。
74.若所述会话存储中的路由数据也不存在,则由所述终端页跳转到预设的 统一登录页进行登陆,该统一登录页相当于游客页面或验证失败后在此登陆, 对于未登录或者登录信息失效的情况则统一进入登录地址且附带当前跳转链 接,一般情况下每一个终端都存在一个登录地址,那么在终端非常多的情况 下,我们就需要对每一个终端都开发一套登录认证方式,对于这种情况我们 使用统一认证方式,即不需要每一个终端开发认证,也通过统一配置的方式 使得用户可以使用同一个登录地址进入不同的终端,如果存在则对所述令牌 进行校验,并获取所述缓存的加密登陆数据。
75.为了创建所述动态路由数据,在本技术一些实施例中,根据diff算法创 建所述动态路由数据,具体为:
76.通过diff算法对本地菜单根据code编码筛选出当前用户可以访问的菜单 信息;
77.通过所述可以访问的菜单信息匹配所述用户的权限数据;
78.将每个权限数据生成对应的动态路由数据,以使得当前用户只能访问配 置的地址数据,对于其他的地址则统一重定向到404页面。
79.具体的,通过diff算法对本地菜单根据code编码筛选出当前用户可以访 问的菜单信息;通过所述可以访问的菜单信息匹配所述用户的权限数据;将 每个权限数据生成对应的动态路由数据,以使得当前用户只能访问配置的地 址数据,对于其他的地址则统一重定向到404页面,在进入登陆成功页后, 向用户展示权限数据对应的界面及权限按钮。
80.为了匹配所述用户的权限数据,在本技术一些实施例中,通过所述可以 访问的菜单信息匹配所述用户的权限数据,具体为:
81.扁平化后台传入的权限树;
82.将后台树中的每一个节点放到temp对象中;
83.通过深度优先遍历前端路由树,然后通过判断temp对象中是否存在当前 节点过滤出所述用户的权限数据对应的路由节点。
84.具体的,对后台传入夫人权限树进行扁平化处理;将后台树中的每一个 节点放到temp对象中;通过深度优先遍历前端路由树,然后通过判断temp 对象中是否存在当前节点过滤出所述用户的权限数据对应的路由节点。
85.步骤s103,将所述动态路由数据存储到所述会话存储中,并进入终端登 陆成功页。
86.进行终端页跳转,并将所述动态路由数据存储到所述会话存储中,并进 入终端登陆成功页。
87.在本技术一些实施例中,所述方法还包括:
88.在进入所述终端登陆成功页后,通过预设指令获取当前页面的所述权限 数据。
89.具体的,在进入所述终端登陆成功页后,通过预设指令获取当前页面的 所述权限数据,向用户展示权限数据对应的界面或权限按钮等。
90.通过应用以上技术方案,在进入所述系统的终端页后,基于终端入口地 址的token令牌获取缓存的加密登陆数据;基于所述加密登陆数据中的动态 路由数据及session storage会话存储中的路由数据进入所述终端对应的登录 页;将所述动态路由数据存储到所述会话存储中,并进入终端登陆成功页, 从而解决了在saas系统多终端环境下菜单组件、菜单项、认证方式、权限控 制不同的标准规范问题,提高了菜单融合效率,降低成本。
91.为了进一步阐述本发明的技术思想,现结合具体的应用场景,对本发明 的技术方案进行说明。
92.本技术实施例还提出了一种多终端权限管理设备,如图2所示,所述设备 包括:
93.获取模块201,用于在进入所述系统的终端页后,基于终端入口地址的 token令牌获取缓存的加密登陆数据;
94.第一登陆模块202,用于基于所述加密登陆数据中的动态路由数据及 session storage会话存储中的路由数据进入所述终端对应的登录页;
95.第二登陆模块203,用于将所述动态路由数据存储到所述会话存储中, 并进入终端登陆成功页。
96.通过应用以上技术方案,在进入所述系统的终端页后,基于终端入口地 址的token令牌获取缓存的加密登陆数据;基于所述加密登陆数据中的动态 路由数据及session storage会话存储中的路由数据进入所述终端对应的登录 页;将所述动态路由数据存储到所述会话存储中,并进入终端登陆成功页, 从而解决了在saas系统多终端环境下菜单组件、菜单项、认证方式、权限控 制不同的标准规范问题,提高了菜单融合效率,降低成本。
97.最后应说明的是:以上实施例仅用以说明本技术的技术方案,而非对其限 制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员 当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中 部分技术特征进行等同替换;而这些修改或者替换,并不驱使相应技术方案的 本质脱离本技术各实施例技术方案的精神和范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1