CN109472127B - 权限处理方法、装置、应用侧设备和存储介质 - Google Patents

权限处理方法、装置、应用侧设备和存储介质 Download PDF

Info

Publication number
CN109472127B
CN109472127B CN201811184754.1A CN201811184754A CN109472127B CN 109472127 B CN109472127 B CN 109472127B CN 201811184754 A CN201811184754 A CN 201811184754A CN 109472127 B CN109472127 B CN 109472127B
Authority
CN
China
Prior art keywords
authority
identifier
permission
user
application
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201811184754.1A
Other languages
English (en)
Other versions
CN109472127A (zh
Inventor
汪南
孙浩庭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Sankuai Online Technology Co Ltd
Original Assignee
Beijing Sankuai Online Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Sankuai Online Technology Co Ltd filed Critical Beijing Sankuai Online Technology Co Ltd
Priority to CN201811184754.1A priority Critical patent/CN109472127B/zh
Publication of CN109472127A publication Critical patent/CN109472127A/zh
Priority to CA3058061A priority patent/CA3058061A1/en
Application granted granted Critical
Publication of CN109472127B publication Critical patent/CN109472127B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/45Structures or tools for the administration of authentication

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

本公开实施例公开了一种权限处理方法、装置、应用侧设备和存储介质。该方法包括:响应用户的访问请求,确定用户的期望权限标识;调用应用权限控制***,在应用权限控制***中查询是否存在用户与期望权限标识的映射关系,应用权限控制***存储有用户与权限标识的第一映射关系;响应第一映射关系中存在用户与期望权限标识的映射关系,获取第一映射关系中与用户对应的权限标识;基于第一映射关系中与用户对应的权限标识和客户端的最低要求权限标识,确定客户端展示的组件和/或可调用的接口。本公开实施例的技术方案能够避免为用户提供不符合维护后的权限的服务的情况。

Description

权限处理方法、装置、应用侧设备和存储介质
技术领域
本公开涉及电子信息领域,尤其涉及一种权限处理方法、装置、应用侧设备和存储介质。
背景技术
单页应用是一种特殊的网络应用。单页应用将引用的所有活动局限于一个网络页面中。仅在该网络页面初始化时加载相应的超文本标记语言(Hyper Text MarkupLanguage,HTML)、Java脚本(即JavaScript)和层叠样式表(Cascading Style Sheets,CSS)等。一旦网络页面接在完成,单页应用不会因为用户的操作而进行页面的重新加载或跳转。由于避免了页面的重新加载,操作更为流畅,单页应用的应用范围也越来越广泛。
发明内容
本公开实施例提供了一种权限处理方法、装置、应用侧设备和存储介质,能够避免为用户提供不符合维护后的权限的服务的情况。
第一方面,本公开实施例提供了一种权限处理方法,包括:响应用户的访问请求,确定用户的期望权限标识,期望权限标识为用户期望的权限对应的权限标识;调用应用权限控制***,在应用权限控制***中查询是否存在用户与期望权限标识的映射关系,应用权限控制***存储有用户与权限标识的第一映射关系;响应第一映射关系中存在用户与期望权限标识的映射关系,获取第一映射关系中与用户对应的权限标识,获取的第一映射关系中与用户对应的权限标识包括期望权限标识;基于第一映射关系中与用户对应的权限标识和客户端的最低要求权限标识,确定客户端展示的组件和/或可调用的接口。
第二方面,本公开实施例提供了一种权限处理装置,包括:响应模块,用于响应用户的访问请求,确定用户的期望权限标识,期望权限标识为用户期望的权限对应的权限标识;权限控制调用模块,用于调用应用权限控制***,在应用权限控制***中查询是否存在用户与期望权限标识的映射关系,应用权限控制***存储有用户与权限标识的第一映射关系;权限标识获取模块,用于响应第一映射关系中存在用户与期望权限标识的映射关系,获取第一映射关系中与用户对应的权限标识,获取的第一映射关系中与用户对应的权限标识包括期望权限标识;确定模块,用于基于第一映射关系中与用户对应的权限标识和客户端的最低要求权限标识,确定展示的组件和/或可调用的接口。
第三方面,本公开实施例提供了一种应用侧设备,应用侧设备包括:存储器和处理器;存储器用于存储可执行程序代码;处理器用于读取存储器中存储的可执行程序代码以执行第一方面的技术方案中的权限处理方法。
第四方面,本公开实施例提供了一种存储介质,存储介质上存储有计算机程序指令;计算机程序指令被处理器执行时实现第一方面的技术方案中的权限处理方法。
本公开实施例提供了一种权限处理方法、装置、应用侧设备和存储介质,客户端可响应用户发出的访问请求,根据访问请求确定用户的期望权限标识。并调用应用权限***,在应用权限控制***存储的用户与权限标识的第一映射关系中查询是否存在用户与期望权限标识的映射关系。响应在应用权限控制***中存在用户与期望权限标识的映射关系,则表明期望权限标识对应的权限对于用户是被允许的。则可基于用户被允许的权限对应的权限标识和最低要求权限标识,确定应用前端展示的组件和/或应用后台可调用的接口。在对用户的权限进行维护(可包括增添权限、删减权限、更改权限等)的情况下,只需要维护应用权限控制***存储的用户与权限标识的第一映射关系。在用户发出访问请求时,会调用应用权限控制***,在维护后的第一映射关系中进行查询,为用户符合维护后的权限的服务,从而避免为用户提供不符合维护后的权限的服务的情况。
附图说明
从下面结合附图对本公开的具体实施方式的描述中可以更好地理解本公开其中,相同或相似的附图标记表示相同或相似的特征。
图1为本公开实施例中一种单页应用涉及到的场景示意图;
图2为本公开一实施例中一种权限处理方法的流程图;
图3为本公开另一实施例中一种权限处理的方法的流程图;
图4为本公开实施例中一种权限处理装置的结构示意图;
图5为本公开实施例中一种应用侧设备的示例性硬件架构的结构图。
具体实施方式
下面将详细描述本公开的各个方面的特征和示例性实施例。在下面的详细描述中,提出了许多具体细节,以便提供对本公开的全面理解。但是,对于本领域技术人员来说很明显的是,本公开可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本公开的示例来提供对本公开的更好的理解。本公开决不限于下面所提出的任何具体配置和算法,而是在不脱离本公开的精神的前提下覆盖了元素、部件和算法的任何修改、替换和改进。在附图和下面的描述中,没有示出公知的结构和技术,以便避免对本公开造成不必要的模糊。
本公开实施例提供了一种权限处理方法、***、设备和存储介质,可应用于对不同的用户提供不同的权限的各类单页应用中。比如,可应用于管控平台、广告投放平台等。在不同的用户登录单页应用后进行各类访问时,可根据用户的权限为用户提供该权限下的服务,避免越权访问。
图1为本公开实施例中一种单页应用涉及到的场景示意图。如图1所示,单页应用涉及到客户端10和应用权限控制***11。客户端可以为本地为用户提供服务的程序,也可以为本地安装有为用户提供服务的应用侧设备,在此并不限定。其中,客户端10可调用应用权限控制***11。在一些示例中,客户端10可包括应用前端101和应用后台102。应用前端101主要负责应用的页面的展示,可展示各类组件,比如,侧边栏、图片、悬浮窗、表格、联动下拉框等,在此并不限定组件的类型和数量。应用后台102可为应用前端101提供调用的接口,比如调用应用前端101的组件对应的应用程序编程接口(Application ProgrammingInterface,API)等。应用权限控制***11中存储有用户与权限标识的第一映射关系。权限标识用于标识权限。权限可包括预览权限、读权限、写权限、删除权限等,在此并不限定权限的种类。权限具有高低的分别,比如,权限包括预览权限、读权限、写权限、删除权限,按照权限由低到高的顺序可排列为预览权限、读权限、写权限、删除权限。还可限定应用前端的组件的权限及权限标识。比如,不同组件的读权限的权限标识不同。可根据具体情况对组件的权限高低预先进行设定,比如,表格的读权限高于图片的读权限。为了便于比较权限,对应的,权限标识也可体现权限高低,具体内容将在后面进行说明。
图2为本公开一实施例中一种权限处理方法的流程图。该权限处理方法可用于客户端。如图2所示,权限处理方法可包括步骤S201至步骤S204。
在步骤S201中,响应用户的访问请求,确定用户的期望权限标识。
用户可通过操作发出访问请求。在客户端可设置***在访问请求到达应用前端之前拦***问请求。客户端接收到用户的访问请求后,响应用户的访问请求,依据该访问请求,确定用户的期望权限标识。在一些示例中,访问请求可包括用户的期望权限标识,并不限定访问请求中包括的期望权限标识的数目。期望权限标识为用户期望的权限对应的权限标识。用户期望的权限可能包括用户被允许的权限,也可能包括用户不被允许的权限。根据访问请求中用户的期望权限标识,确定用户的期望权限标识对应的期望权限是否被允许。
在步骤S202中,调用应用权限控制***,在应用权限控制***中查询是否存在用户与期望权限标识的映射关系。
应用权限控制***中存储有用户与权限标识的映射关系。也就是说,根据应用权限控制***中存储的第一映射关系,可确定每个用户具有的权限。需要说明的是,在客户端并没有存储用户与权限标识的映射关系。确定用户的访问请求中的期望权限标识所对应的权限是否有效,可在应用权限控制***中进行查询。
因此,在需要维护用户与权限标识的映射关系时,只需要维护应用权限控制***中存储的第一映射关系即可。对于访问客户端的访问请求,均可调用应用权限***,在应用权限***中查询该访问请求中的期望权限标识与该访问请求的用户的映射关系,是否存在于应用权限控制***中维护后的第一映射关系,以确定访问请求中期望权限标识指示的权限是否有效。
比如,可以在应用权限控制***中以表格形式存储用户与权限标识的第一映射关系。例如,表一为应用权限控制***中存储的用户与权限标识的第一映射关系。其中,用户A对应的权限标识包括readlan1、writetable3和prewin1,用户B对应的权限标识包括readlan2、readtable4和prewin1。readlan1指示侧边栏内容1的读权限;writetable3指示表格3的写权限;prewin1指示悬浮窗1的预览权限;readlan2指示侧边栏内容2的读权限;readtable4指示表格4的读权限。
表一
Figure BDA0001825900940000051
在步骤S203中,响应第一映射关系中存在用户与期望权限标识的映射关系,获取第一映射关系中与用户对应的权限标识。
需要说明的是,客户端获取的第一映射关系中与用户对应的权限标识包括用户的期望权限标识,但不限于用户的期望权限标识,还可包括应用权限控制***中存储的第一映射关系中其他与该用户对应的权限标识。
第一映射关系中存在用户与期望权限标识的映射关系,则表明该用户的期望权限标识对应的权限被允许,可将用户对应的权限标识提供给客户端,使得客户端可获取到用户对应的权限标识,并按照用户被允许的权限展示组件,和/或按照用户被允许的权限调用接口。
第一映射***中不存在用户与期望权限标识的映射关系,则表明该用户的该期望权限标识对应的权限不被允许,可将访问请求中的不被允许的权限对应的期望权限标识拦截,不向客户端的应用前端和/或应用后台提供不被允许的权限对应的期望权限标识。在不向客户端的应用前端和/或应用后台提供不被允许的权限对应的期望权限标识的基础上,可根据具体工作场景选择是否将应用权限控制***中存储的映射关系中与该用户对应的权限标识提供给客户端的应用前端和/或应用后台。
比如,设定应用权限控制***中存储的第一映射关系如表一所示。若用户A发出的访问请求包括两个期望权限标识,一个期望权限标识指示表格3的写权限,另一个期望权限标识指示悬浮窗3的预览权限。则可在表一所示的第一映射关系中进行查找,确定第一映射关系中存在用户A与指示表格3的写权限的期望权限标识的映射关系,但第一映射关系中不存在用户A与指示悬浮窗3的预览权限的映射关系。可将指示表格3的写权限的期望权限标识writetable3提供给客户端以及客户端的应用前端和/或应用后台。还可将指示表格3的写权限的期望权限标识writetable3,以及表一中用户A对应的其他权限标识readlan1和prewin1提供给客户端以及客户端的应用前端和/或应用后台。
在步骤S204中,基于第一映射关系中与用户对应的权限标识和客户端的最低要求权限标识,确定客户端展示的组件和/或可调用的接口。
可预先为客户端配置应用侧最小权限标识,最低要求权限标识为限定的客户端所能允许的级别最低的权限的权限标识。
在一些示例中,客户端包括应用前端和应用后台。相应的,最低要求权限标识可包括前端最低要求权限标识和后台最低要求权限标识。前端最低要求权限标识可配置在应用前端。后台最低要求权限标识可配置在应用后台。其中,前端最低要求权限标识为限定的应用前端所能允许的级别最低的权限的权限标识。后台最低要求权限标识为限定的应用后台所能允许的级别最低的权限的权限标识。在对权限处理***的权限进行开发的过程中,应用前端侧重于显示效果,应用后台侧重于对接口的调用(即访问)。应用前端与应用后台的侧重点不同。但通过设置各类权限,可分别设置应用前端展示组件的权限和/或应用后台调用接口的权限。根据用户的访问请求确定的期望权限标识可包括用于指示应用前端展示组件的权限的权限标识,和/或用于指示应用后台调用接口的权限的权限标识。从而避免了应用前端和应用后台的侧重点的冲突。
与用户对应的权限标识是用户被允许的权限的权限,但针对用户被允许的权限有可能不被该客户端允许。因此,可利用最低要求权限标识,确定客户端允许的用户对应的权限标识的权限。
具体的,确定第一映射关系中与用户对应的权限标识指示的权限高于或等于最低要求权限标识指示的权限,则客户端可展示与用户对应的权限标识指示的组件,和/或可调用与用户对应的权限标识指示的接口。确定第一映射关系中与用户对应的权限标识指示的权限低于最低要求权限标识指示的权限,则应用侧并不展示与用户对应的权限标识指示的组件,也不能调用与用户对应的权限标识指示的接口。
在一些示例中,可根据客户端允许的用户对应的权限标识,计算得到客户端允许的用户对应的权限标识指示的权限的路由,根据计算得到的路由,可进行各组件展示之间的跳转。比如,用户对应的初始权限的路由指示客户端上单页应用展示的侧边栏,用户对应的下一个权限的路由指示客户端上单页应用需展示的图片,则客户端显示由侧边栏跳转至需展示的图片。
在本公开实施例中,客户端可响应用户发出的访问请求,根据访问请求确定用户的期望权限标识。并调用应用权限***,在应用权限控制***存储的用户与权限标识的第一映射关系中查询是否存在用户与期望权限标识的映射关系。在应用权限控制***中存在用户与期望权限标识的映射关系,则表明期望权限标识对应的权限对于用户是被允许的。则可基于用户被允许的权限对应的权限标识和最低要求权限标识,确定应用前端展示的组件和/或应用后台可调用的接口。在对用户的权限进行维护(可包括增添权限、删减权限、更改权限等)的情况下,只需要维护应用权限控制***存储的用户与权限标识的第一映射关系。在用户发出访问请求时,会调用应用权限控制***,在维护后的第一映射关系中进行查询,为用户符合维护后的权限的服务,从而避免为用户提供不符合维护后的权限的服务的情况。比如避免出现用户越权的现象。提高了权限处理的可维护性和可操作性。
在具体操作中,可能会根据具体需求去调整请求的地址,比如指向客户端展示的组件的路由的地址(如endpoint)和/或可调用的接口的地址(如endpoint)等,因此,指向客户端展示的组件的路由的地址(如endpoint)和/或可调用的接口的地址(如endpoint)等均易发生变化,并不稳定。在本公开实施例中,权限是相对稳定的,因此权限标识也是相对稳定的。根据权限对应的权限标识,来确定客户端展示的组件和/或可调用的接口,增强了单页应用的稳定性。
在一些示例中,可将所有种类的权限的权限三元组配置至客户端。这里的所有权限指客户端可支持的所有种类的权限。比如,客户端支持预览权限、读权限和写权限,即使部分或全部用户的请求并未全部包括预览权限、读权限和写权限,也需为客户端配置预览权限、读权限和写权限各自的权限三元组。
其中,每个权限三元组包括第一权限标识、第二权限标识和第三权限标识。第一权限标识为客户端记录的权限变量名。第二权限标识为用于传输和权限比较的权限数值。第三权限标识为应用权限控制***记录的权限令牌名。同一个权限三元组中的第一权限标识、第二权限标识和第三权限标识均表征同一权限。
比如,一个权限三元组可表示为(Key,Code,Token)。其中,第一权限标识为Key,第二权限标识为Code,第三权限标识为Token。需要说明的是,在权限三元组中,第一权限标识、第二权限标识和第三权限标识的顺序可以改变,在此并不限定。比如,表格3的读权限的权限三元组可表示为(ta3_re,3,table3 read),其中的第一权限标识ta3_re、第二权限标识3和第三权限标识table3 read均指示表格3的读权限。且根据第一权限标识、第二权限标识和第三权限标识中的任意一个标识,都可在该权限三元组中查找到另外一个标识。
在一些示例中,客户端一般面向开发人员,因此第一权限标识可为用于指示权限的开发编程中定义的变量名。
第二权限标识用于传输和权限比较。为了便于传输以及便于比较权限高低,第二权限标识可为用于指示权限的一个整数值。在进行权限比较时,可设定第二权限标识越大,该第二权限标识指示的权限越高。从而实现权限的可比较性。
应用权限控制***一般面向运营人员,因此第三权限标识可为用于指示权限的便于阅读的令牌字符串。
在不同区域和不同功能的要求下,可根据权限三元组,进行同一权限三元组中的第一权限标识、第二权限标识和第三权限标识之间的相互转化。
在上述实施例中,访问请求用于传输期望权限标识,访问请求中的期望权限标识可为第二权限标识。第一映射关系存储于应用权限控制***中,则第一映射关系中的权限标识为第三权限标识。
上述实施例的步骤S202中在应用权限控制***中查询是否存在用户与期望权限标识的映射关系的过程,具体可为:根据权限三元组,将期望权限标识转化为与期望权限标识对应的第三权限标识;在应用权限控制***中查询是否存在用户与期望权限标识转化的第三权限标识的映射关系。
为了便于传输,访问请求中的期望权限标识为第二权限标识。但在应用权限控制***中存储的第一映射关系中的权限标识为第三权限标识。为了便于查找,可先根据权限三元组,将访问请求中的期望权限标识转化为对应的第三权限标识,再在第一映射关系中查找是否存在用户与期望权限标识转化的第三权限标识的映射关系。
上述实施例的步骤S204中基于第一映射关系中与用户对应的权限标识和客户端的最低要求权限标识,确定客户端展示的组件和/或可调用的接口的内容,具体可为:根据权限三元组,将第一映射关系中与用户对应的权限标识和最低要求权限标识,均转化为第二权限标识;用户第二权限标识大于或等于应用侧最小权限标识转化的第二权限标识,确定在客户端展示的第二目标组件和/或可调用的第二目标接口。
其中,用户第二权限标识为第一映射关系中与用户对应的权限标识转化的第二权限标识。第二目标组件和第二目标接口均与用户第二权限标识对应。
目标组件和目标接口均与用户第二权限标识对应。也就是说,目标组件为与用户第二权限标识对应的组件。目标接口为与用户第二权限标识对应的接口。
由于应用权限控制***中第一映射关系中的权限标识为第三权限标识。而配置在客户端的应用侧最小权限标识为第一权限标识。为了便于比较,需要根据权限三元组,将第一映射关系中与用户对应的权限标识和最低要求权限标识,均转化为第二权限标识进行比较。第二权限标识为用于权限比较的权限数值。用户第二权限标识大于或等于最低要求权限标识转化的第二权限标识,表明用户第二权限标识指示的权限高于或等于最低要求权限标识指示的权限。客户端可展示目标组件,和/或可调用目标接口。
在一些示例中,客户端包括应用前端和应用后台。相应的,最低要求权限标识可包括前端最低要求权限标识和/或后台最低要求权限标识。同理,用户第二权限标识大于或等于前端最低要求权限标识转化的第二权限标识,则应用前端展示目标组件。应用前端显示目标组件,需要调用与目标组件相对应的接口。用户第二权限标识大于或等于后台最低要求权限标识转化的第二权限标识,则应用后台可调用目标接口。
在一些示例中,确定客户端未接收过该用户的权限全量查询请求,则上述实施例中获取的第一映射关系中与该用户对应的权限标识为该用户对应的所有权限标识。
可以判断在该用户的本次访问请求之前,该用户是否发出过权限全量查询请求。在一些示例中,用户是否发出过权限全量查询请求可通过检测是否调用过权限全量查询接口来判定。
权限全量查询请求用于在应用权限控制***存储的第一映射关系中查询与用户所对应的所有权限标识。比如,在本次访问请求之前,当用户在有效时间内进行过注册操作或登录操作,可以认为用户已经发出过权限全量查询请求。
确定该用户未发出过权限全量查询请求,则可在应用权限控制***中查询存储的第一映射关系中查询与用户对应的所有权限标识,并获取第一映射关系中与该用户对应的所有权限标识。比如,第一映射关系如上文中的表一所示,用户为用户B。则在第一映射关系中查询得到的与用户B对应的所有权限标识包括readlan2、readtable4和prewin1。
在一些示例中,第一映射关系中的权限标识均为第三权限标识。可将查询得到的与用户对应的所有第三权限标识均转化为第二权限标识,传输至客户端。再将传输来的第二权限标识与最低要求权限标识转化的第二权限标识对比,确定客户端展示的组件和/或可调用的接口。还可将传输来的第二权限标识转化为第一权限标识,记录在客户端的应用后台,便于开发人员查看。
图3为本公开另一实施例中一种权限处理的方法的流程图。如图3所示,权限处理的方法包括步骤S301至步骤S306。
在步骤S301中,接收用户的权限全量查询请求。
其中,权限全量查询请求的说明可参见上述实施例,在此不再赘述。
在步骤S302中,调用应用权限控制***,在第一映射关系中查找与用户对应的所有权限标识。
接收到用户发出的权限全量查询请求,在一些示例中,则可调用权限全量查询接口,获取第一映射关系中与用户对应的所有权限标识。
在步骤S303中,将第一映射关系中与用户对应的所有权限标识,缓存在客户端。以使得用户的期望权限标识存在与客户端的缓存中时,基于客户端的缓存中与用户对应的权限标识和最低要求权限标识,确定客户端展示的组件和/或可调用的接口。
客户端的缓存为本地缓存。在响应用户发出的权限全量查询请求得到第一映射关系中与用户对应的所有权限标识,将应用权限控制***存储的映射关系中与用户对应的所有权限标识缓存在客户端。以在相同的用户再次发出访问请求时,可以直接在客户端的缓存中进行查询。
在步骤S304中,响应用户的访问请求,确定用户的期望权限标识。
步骤S304的相关内容可参见上述实施例中的步骤S201的相关说明,在此不再赘述。
在步骤S305中,响应在客户端的缓存中存在期望权限标识,基于客户端的缓存中与用户对应的权限标识和最低要求权限标识,确定客户端展示的组件和/或可调用的接口。
其中,客户端的缓存中用户对应的权限标识包括期望权限标识。
在用户再次发出访问请求时,在客户端的缓存中查询是否存在该期望权限标识。在客户端的缓存中存在期望权限标识,表明用户的与期望权限标识对应的权限被允许,可进一步基于客户端的缓存中与用户对应的权限标识和最低要求权限标识,判定该用户的权限对于客户端是否被允许,确定客户端展示的组件和可调用的接口。
步骤步骤S305中在客户端对期望权限标识的处理可参见上述实施例中在应用权限控制***中对期望权限标识的查找,以及客户端根据用户对应的权限标识和最低要求权限标识,确定客户端展示的组件和/或可调用的接口的内容。
在步骤S306中,响应在客户端的缓存中不存在期望权限标识,在客户端展示提示信息。
其中,提示信息指示初始有效路由。初始有效路由为期望权限标识对应的路由所在的路径中,权限标识存在于客户端的缓存中的起始路由。也就是说,初始有效路由为用户在客户端被允许的权限中第一个有权限的路由。比如,初始有效路由为对于用户,客户端可展示的侧边栏的路由。
在一些示例中,为了防止客户端的缓存中的权限标识未与维护后的应用权限控制***同步,可再次调用应用权限控制***,并在应用权限控制***中查询验证。可利用权限三元组,在权限三元组中的第一权限标识、第二权限标识和第三权限标识中相互转化。
具体的,确定用户第二权限标识大于或等于最低要求权限标识转化的第二权限标识,将该用户对应的第二权限标识转化为第三权限标识。调用应用权限控制***,在第一映射关系中查询是否存在该用户与用户第三权限标识的映射关系。响应第一映射关系中存在该用户与用户第三权限标识的映射关系,确定在客户端展示的第一目标组件和/或可调用的第一目标接口。
其中,用户第三权限标识为用户对应的第二权限标识转化的第三权限标识。第一目标组件和第一目标接口均与用户第三权限标识对应。第一映射关系中查询是否存在该用户与用户第三权限标识,以及确定在客户端展示的目标组件和/或可调用的目标接口的内容可参见上述实施例中的相关说明,在此不再赘述。
图4为本公开实施例中一种权限处理装置的结构示意图。如图4所示,权限处理装置400可包括响应模块401、权限控制调用模块402、权限标识获取模块403和确定模块404。
响应模块401,用于响应用户的访问请求,确定用户的期望权限标识。
其中,期望权限标识为用户期望的权限对应的权限标识。
权限控制调用模块402,用于调用应用权限控制***,在应用权限控制***中查询是否存在用户与期望权限标识的映射关系。
其中,应用权限控制***存储有用户与权限标识的第一映射关系。
权限标识获取模块403,用于响应第一映射关系中存在用户与期望权限标识的映射关系,获取第一映射关系中与用户对应的权限标识。
其中,获取的第一映射关系中与用户对应的权限标识包括期望权限标识。
确定模块404,用于基于第一映射关系中与用户对应的权限标识和最低要求权限标识,确定展示的组件和/或可调用的接口。
在一些示例中,权限处理装置400还可包括配置模块405,该配置模块405用于将所有种类的权限的权限三元组同步配置至权限处理装置400。
其中,每个权限三元组包括第一权限标识、第二权限标识和第三权限标识。第一权限标识为权限处理装置400记录的权限变量名。第二权限标识为用于传输和权限比较的权限数值。第三权限标识为应用权限控制***记录的权限令牌名。同一个权限三元组中的第一权限标识、第二权限标识和第三权限标识均表征同一权限。
在一些示例中,期望权限标识为第二权限标识,第一映射关系中的权限标识为第三权限标识。
权限控制调用模块402,具体用于根据权限三元组,将期望权限标识转化为与期望权限标识对应的第三权限标识;在应用权限控制***中查询是否存在用户与期望权限标识转化的第三权限标识的映射关系。
在一些示例中,确定权限处理装置400未接收过该用户的权限全量查询请求,权限标识获取模块403获取的第一映射关系中与用户对应的权限标识为与用户对应的所有权限标识。
在一些示例中,权限处理装置400还可包括接收模块406、缓存模块407。权限处理装置400还可包括缓存查询模块408和提示模块409。
接收模块406,用于接收用户的权限全量查询请求。
权限控制调用模块402,还用于调用应用权限控制***,在第一映射关系中查找与用户对应的所有权限标识。
缓存模块407,用于将第一映射关系中与用户对应的所有权限标识,缓存在权限处理装置400,以使得用户的期望权限标识存在于权限处理装置400的缓存中时,基于权限处理装置400的缓存中与用户对应的权限标识和最低要求权限标识,确定权限处理装置400展示的组件和/或可调用的接口。
缓存查询模块408,用于在缓存中查询是否存在期望权限标识。
确定模块404,还用于在缓存中存在期望权限标识,基于缓存中与用户对应的权限标识和最低要求权限标识,确定展示的组件和/或可调用的接口。
其中,缓存中的用户对应的权限标识包括期望权限标识。
提示模块409,用于在权限处理装置400的缓存中不存在期望权限标识,在权限处理装置400展示提示信息。
其中,提示信息指示初始有效路由。初始有效路由为期望权限标识对应的路由所在的路径中,权限标识存在于权限处理装置400的缓存中的起始路由。
在一些示例中,权限处理装置400配置有权限三元组,每个权限三元组包括第一权限标识、第二权限标识和第三权限标识。
在一些示例中,确定模块404可具体用于:根据权限三元组,将第一映射关系中与用户对应的权限标识和最低要求权限标识,均转化为第二权限标识;用户第二权限标识大于或等于最低要求权限标识转化的第二权限标识,确定在权限处理装置400展示的第二目标组件和/或可调用的第二目标接口,第二目标组件和第二目标接口均与用户第二权限标识对应,用户第二权限标识为第一映射关系中与用户对应的权限标识转化的第二权限标识。
在本公开实施例中,响应模块可响应用户发出的访问请求,根据访问请求确定用户的期望权限标识。权限控制调用模块调用应用权限***,在应用权限控制***存储的用户与权限标识的第一映射关系中查询是否存在用户与期望权限标识的映射关系。在应用权限控制***中存在用户与期望权限标识的映射关系,则表明期望权限标识对应的权限对于用户是被允许的。则确定模块可基于用户被允许的权限对应的权限标识和最低要求权限标识,确定应用前端展示的组件和/或应用后台可调用的接口。在对用户的权限进行维护(可包括增添权限、删减权限、更改权限等)的情况下,只需要维护应用权限控制***存储的用户与权限标识的第一映射关系。在用户发出访问请求时,会调用应用权限控制***,在维护后的第一映射关系中进行查询,为用户符合维护后的权限的服务,从而避免为用户提供不符合维护后的权限的服务的情况。比如避免出现用户越权的现象。提高了权限处理的可维护性和可操作性。
图5为能够实现根据本公开实施例的权限处理方法和装置的应用侧设备的示例性硬件架构的结构图。如图5所示,应用侧设备500包括输入设备501、输入接口502、中央处理器503、存储器504、输出接口505、以及输出设备506。其中,输入接口502、中央处理器503、存储器504、以及输出接口505通过总线510相互连接,输入设备501和输出设备506分别通过输入接口502和输出接口505与总线510连接,进而与应用侧设备500的其他组件连接。
具体地,输入设备501接收来自外部的输入信息,并通过输入接口502将输入信息传送到中央处理器503;中央处理器503基于存储器504中存储的计算机可执行指令对输入信息进行处理以生成输出信息,将输出信息临时或者永久地存储在存储器504中,然后通过输出接口505将输出信息传送到输出设备506;输出设备506将输出信息输出到应用侧设备500的外部供用户使用。
也就是说,图5所示的服务器也可以被实现为包括:存储有计算机可执行指令的存储器;以及处理器,该处理器在执行计算机可执行指令时可以实现上述实施例中的权限处理方法和装置。
本公开实施例还提供一种存储介质,该存储介质上存储有计算机程序指令;该计算机程序指令被处理器执行时实现本公开实施例提供的权限处理方法。
以上的结构框图中所示的功能模块可以实现为硬件、软件、固件或者它们的组合。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(ASIC)、适当的固件、插件、功能卡等等。当以软件方式实现时,本公开的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。“存储介质”可以包括能够存储或传输信息的任何介质。存储介质的例子包括电子电路、半导体存储器设备、ROM、闪存、可擦除ROM(EROM)、软盘、CD-ROM、光盘、硬盘、光纤介质、射频(RF)链路,等等。代码段可以经由诸如因特网、内联网等的计算机网络被下载。
本领域技术人员应能理解,在权利要求书中,术语“包括”并不排除其他装置或步骤;不定冠词“一个”不排除多个;术语“第一”、“第二”用于标示名称而非用于表示任何特定的顺序。
需要明确的是,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同或相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。对于装置实施例、应用侧设备实施例和存储介质实施例而言,相关之处及有益效果可以参见方法实施例的说明部分。本公开并不局限于上文所描述并在图中示出的特定步骤和结构。本领域的技术人员可以在领会本公开的精神之后,作出各种改变、修改和添加,或者改变步骤之间的顺序。并且,为了简明起见,这里省略对已知方法技术的详细描述。

Claims (8)

1.一种权限处理方法,其特征在于,包括:
响应用户的访问请求,确定所述用户的期望权限标识,所述期望权限标识为用户期望的权限对应的权限标识;
调用应用权限控制***,在所述应用权限控制***中查询是否存在所述用户与所述期望权限标识的映射关系,所述应用权限控制***存储有用户与权限标识的第一映射关系;
响应所述第一映射关系中存在所述用户与所述期望权限标识的映射关系,获取所述第一映射关系中与所述用户对应的权限标识,获取的所述第一映射关系中与用户对应的权限标识包括所述期望权限标识;
基于所述第一映射关系中与所述用户对应的权限标识和所述客户端的最低要求权限标识,确定客户端展示的组件和/或可调用的接口;
在所述响应用户的访问请求之前,还包括:
将所有种类的权限的权限三元组同步配置至客户端;
其中,每个所述权限三元组包括第一权限标识、第二权限标识和第三权限标识,所述第一权限标识为所述客户端记录的权限变量名,所述第二权限标识为用于传输和权限比较的权限数值,所述第三权限标识为所述应用权限控制***记录的权限令牌名;同一个权限三元组中的所述第一权限标识、所述第二权限标识和所述第三权限标识均表征同一权限。
2.根据权利要求1所述的方法,其特征在于,所述期望权限标识为所述第二权限标识,所述第一映射关系中的权限标识为第三权限标识;
所述在应用权限控制***中查询是否存在所述用户与所述期望权限标识的映射关系,包括:
根据所述权限三元组,将所述期望权限标识转化为与所述期望权限标识对应的所述第三权限标识;
在应用权限控制***中查询是否存在所述用户与所述期望权限标识转化的所述第三权限标识的映射关系。
3.根据权利要求1所述的方法,其特征在于,在所述响应用户的访问请求,确定所述用户的期望权限标识之前,还包括:
接收所述用户的权限全量查询请求;
调用所述应用权限控制***,在所述第一映射关系中查找与所述用户对应的所有所述权限标识;
将所述第一映射关系中与所述用户对应的所有所述权限标识,缓存在所述客户端,以使得用户的期望权限标识存在于所述客户端的缓存中时,基于所述客户端的缓存中与所述用户对应的权限标识和所述最低要求权限标识,确定所述客户端展示的组件和/或可调用的接口。
4.根据权利要求3所述的方法,其特征在于,响应未接收过所述用户的权限全量查询请求,获取的所述第一映射关系中与所述用户对应的权限标识为与所述用户对应的所有所述权限标识。
5.根据权利要求1所述的方法,其特征在于,所述基于所述第一映射关系中与所述用户对应的权限标识和所述客户端的最低要求权限标识,确定客户端展示的组件和/或可调用的接口,包括:
根据所述权限三元组,将所述第一映射关系中与所述用户对应的权限标识和所述最低要求权限标识,均转化为所述第二权限标识;
响应用户第二权限标识大于或等于所述最低要求权限标识转化的所述第二权限标识,确定在所述客户端展示的第二目标组件和/或可调用的第二目标接口,所述第二目标组件和所述第二目标接口均与所述用户第二权限标识对应,所述用户第二权限标识为所述第一映射关系中与所述用户对应的权限标识转化的所述第二权限标识。
6.一种权限处理装置,其特征在于,包括:
响应模块,用于响应用户的访问请求,确定所述用户的期望权限标识,所述期望权限标识为用户期望的权限对应的权限标识;
权限控制调用模块,用于调用应用权限控制***,在所述应用权限控制***中查询是否存在所述用户与所述期望权限标识的映射关系,所述应用权限控制***存储有用户与权限标识的第一映射关系;
权限标识获取模块,用于响应所述第一映射关系中存在所述用户与所述期望权限标识的映射关系,获取所述第一映射关系中与所述用户对应的权限标识,获取的所述第一映射关系中与用户对应的权限标识包括所述期望权限标识;
确定模块,用于基于所述第一映射关系中与所述用户对应的权限标识和最低要求权限标识,确定展示的组件和/或可调用的接口;
所述装置,还包括:
配置模块,用于将所有种类的权限的权限三元组同步配置至所述权限处理装置;
其中,每个所述权限三元组包括第一权限标识、第二权限标识和第三权限标识,所述第一权限标识为所述权限处理装置记录的权限变量名,所述第二权限标识为用于传输和权限比较的权限数值,所述第三权限标识为所述应用权限控制***记录的权限令牌名;同一个权限三元组中的所述第一权限标识、所述第二权限标识和所述第三权限标识均表征同一权限。
7.一种应用侧设备,其特征在于,所述应用侧设备包括:存储器和处理器;
所述存储器用于存储可执行程序代码;
所述处理器用于读取所述存储器中存储的可执行程序代码以执行权利要求1至5中任意一项所述的权限处理方法。
8.一种存储介质,其特征在于,所述存储介质上存储有计算机程序指令;所述计算机程序指令被处理器执行时实现如权利要求1至5中任意一项所述的权限处理方法。
CN201811184754.1A 2018-10-11 2018-10-11 权限处理方法、装置、应用侧设备和存储介质 Active CN109472127B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201811184754.1A CN109472127B (zh) 2018-10-11 2018-10-11 权限处理方法、装置、应用侧设备和存储介质
CA3058061A CA3058061A1 (en) 2018-10-11 2019-10-09 Permission processing method, device, application side device and storage media

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811184754.1A CN109472127B (zh) 2018-10-11 2018-10-11 权限处理方法、装置、应用侧设备和存储介质

Publications (2)

Publication Number Publication Date
CN109472127A CN109472127A (zh) 2019-03-15
CN109472127B true CN109472127B (zh) 2021-01-22

Family

ID=65665080

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811184754.1A Active CN109472127B (zh) 2018-10-11 2018-10-11 权限处理方法、装置、应用侧设备和存储介质

Country Status (2)

Country Link
CN (1) CN109472127B (zh)
CA (1) CA3058061A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111143824B (zh) * 2019-12-31 2022-06-10 奇安信科技集团股份有限公司 冗余权限的确定方法、装置、计算机设备和可读存储介质
US20220300635A1 (en) * 2021-03-18 2022-09-22 International Business Machines Corporation Managing search queries using encrypted cache data
CN113204790B (zh) * 2021-05-25 2024-03-01 北京字跳网络技术有限公司 一种视图权限处理方法、装置、设备及介质
CN115766296B (zh) * 2023-01-09 2023-05-23 广东中思拓大数据研究院有限公司 用户账户的权限控制方法、装置、服务器和存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007021823A2 (en) * 2005-08-09 2007-02-22 Tripwire, Inc. Information technology governance and controls methods and apparatuses
CN101499906A (zh) * 2008-02-02 2009-08-05 厦门雅迅网络股份有限公司 一种基于角色功能映射表实现用户权限管理的方法
CN104486357A (zh) * 2014-12-30 2015-04-01 北京经开投资开发股份有限公司 一种基于ssh网站实现rbac访问权限控制的方法

Also Published As

Publication number Publication date
CN109472127A (zh) 2019-03-15
CA3058061A1 (en) 2020-04-11

Similar Documents

Publication Publication Date Title
CN109472127B (zh) 权限处理方法、装置、应用侧设备和存储介质
US10412176B2 (en) Website access method, apparatus, and website system
US8667578B2 (en) Web management authorization and delegation framework
EP2106087B1 (en) Method and apparatus for handling security level of device on network
US9143389B2 (en) Methods, appratuses, and computer program products for determining a network interface to access a network resource
US20110010704A1 (en) Method and apparatus for installing application using application identifier
CN106462430B (zh) 应用升级包获取方法及装置
US9317681B2 (en) Information processing apparatus, information processing method, and computer program product
CN113452780B (zh) 针对客户端的访问请求处理方法、装置、设备及介质
CN108256014B (zh) 页面展示方法及装置
CN107844488B (zh) 数据查询方法和装置
US20120159569A1 (en) Method of managing web application policy using smart card, and web server and mobile terminal for implementing the same
KR20050013961A (ko) 늦은 바인딩/동적 경로명 결정을 위한 방법 및 장치
CN103269353A (zh) Web缓存回源优化方法及Web缓存***
CN111753268B (zh) 一种单点登录方法、装置、存储介质及移动终端
EP1422958A1 (en) Permission token management system, permission token management method, program and recording medium
KR102021269B1 (ko) 위치공유자 단말기의 위치정보 공유방법
CN107623662B (zh) 访问的控制方法,装置和***
CN114143042A (zh) 漏洞模拟方法、装置、计算机设备和存储介质
JP2013254352A (ja) 管理装置、管理システム、及び管理プログラム
KR100601848B1 (ko) 이동 통신 단말에서의 다운로드 디스크립터 처리 방법
US20200045128A1 (en) Content deployment method and delivery controller
JP2005284573A (ja) アクセス管理システム
CN117608677B (zh) 插件的生成方法、云服务***及服务访问方法
KR102582398B1 (ko) 어플리케이션을 제어하는 방법 및 장치

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant