CN113746831B - 权限验证方法、装置及存储介质 - Google Patents
权限验证方法、装置及存储介质 Download PDFInfo
- Publication number
- CN113746831B CN113746831B CN202111026871.7A CN202111026871A CN113746831B CN 113746831 B CN113746831 B CN 113746831B CN 202111026871 A CN202111026871 A CN 202111026871A CN 113746831 B CN113746831 B CN 113746831B
- Authority
- CN
- China
- Prior art keywords
- authority
- user
- data
- identifier
- user group
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/104—Grouping of entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
- H04L61/4505—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
- H04L61/4523—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using lightweight directory access protocol [LDAP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Storage Device Security (AREA)
Abstract
本申请实施例公开了一种权限验证方法、装置及存储介质,属于大数据技术领域。在本申请实施例中,鉴权设备存储了权限信息,以及用户标识和用户组标识的第一关联关系。在此基础上,在对接收到的操作请求进行验证时,鉴权设备可以直接从自身存储的第一关联关系中获取第一操作请求中携带的第一用户标识所关联的第一用户组标识,进而根据自身存储的权限信息来实现权限验证,无需从外部服务器中获取用户标识关联的用户组标识,减少了鉴权设备与外部服务器之间的交互,从而减小了外部服务器的访问压力,缩短了权限验证所需耗费的时间。
Description
技术领域
本申请涉及大数据技术领域,特别涉及一种权限验证方法、装置及存储介质。
背景技术
随着大数据技术的迅猛发展,大数据的应用范围越来越广。在大数据的应用过程中,数据的安全性问题逐渐凸显,基于此,对访问数据的用户进行权限验证变得至关重要。
在相关技术中,在进行权限验证之前,鉴权设备首先可以从权限数据管理服务器中获取权限信息,并存储该权限信息。其中,该权限信息能够指示不同用户以及不同用户组针对不同数据的操作权限。之后,当鉴权设备接收到用户触发的针对某个数据的操作请求时,可以根据该操作请求中携带的用户标识从LDAP服务器获取该用户标识关联的用户组标识,之后,根据该自身存储的权限信息、操作请求携带的用户标识以及获取到的用户组标识,来对该操作请求所需的操作权限进行验证。
由此可见,在上述实现方式中,在每次验证权限时,鉴权设备都要与LDAP服务器进行交互,以从LDAP服务器中获取操作请求中的用户标识所关联的用户组标识,这样,LDAP服务器的访问压力较大,权限验证所耗费的时间也比较长,并且,当LDAP服务器异常无法提供服务时,将会导致鉴权设备无法鉴权,可用性较低。
发明内容
本申请实施例提供了一种权限验证方法、装置及存储介质,可以减少鉴权设备与外部服务器之间的交互,从而减小外部服务器的访问压力,缩短权限验证所需耗费的时间。所述技术方案如下:
一方面,提供了一种权限验证方法,其特征在于,所述方法包括:
获取针对目标数据的第一操作请求,所述第一操作请求携带有第一用户标识和所述目标数据的数据标识;
从存储的用户标识和用户组标识的第一关联关系中获取与所述第一用户标识所关联的第一用户组标识;
根据所述目标数据的数据标识,从存储的权限信息获取所述第一用户标识对应的操作所述目标数据的一个或多个第一操作权限,以及获取所述第一用户组标识对应的操作所述目标数据的一个或多个第二操作权限;
根据所述一个或多个第一操作权限和所述一个或多个第二操作权限,对所述第一操作请求所需的目标操作权限进行验证。
可选地,所述一个或多个第一操作权限和所述一个或多个第二操作权限中包括允许操作权限,所述根据所述一个或多个第一操作权限和所述一个或多个第二操作权限,对所述第一操作请求所需的目标操作权限进行验证,包括:
如果所述允许操作权限中包含所述目标操作权限,且所述一个或多个第一操作权限和所述一个或多个第二操作权限还包括不允许操作权限,则判断所述不允许操作权限中是否包含所述目标操作权限;
如果所述不允许操作权限中不包含所述目标操作权限,则对所述目标操作权限的验证通过。
可选地,所述方法还包括:
如果所述允许操作权限中不包含所述目标操作权限,或者,如果所述不允许操作权限中包含所述目标操作权限,则对所述目标操作权限的验证未通过。
可选地,所述方法还包括:
从权限数据管理服务器中获取所述权限信息,所述权限信息用于指示不同用户和不同用户组对不同的数据的操作权限;
根据所述权限信息获取多个用户标识和多个用户组标识;
从所述权限数据管理服务器中获取所述多个用户标识中每个用户标识关联的用户组标识,以及获取所述多个用户组标识中每个用户组标识关联的用户标识,所述权限数据管理服务器中存储有用户标识和用户组标识的第二关联关系,所述第二关联关系包括所述第一关联关系;
根据获取到的每个用户标识关联的用户组标识、每个用户组标识关联的用户标识,生成所述第一关联关系。
可选地,所述生成第一关联关系之后,还包括:
每当到达同步时刻时,从所述权限数据管理服务器中获取从第一时刻到当前时刻之间发生变更的权限信息,所述第一时刻为最近一次从所述权限数据管理服务器中成功同步权限信息的时刻;
根据所述发生变更的权限信息对存储的所述权限信息进行更新;
根据更新后的权限信息从所述权限数据管理服务器中获取从所述第一时刻到当前时刻之间发生变更的关联关系;
根据所述发生变更的关联关系对所述第一关联关系进行更新。
另一方面,提供了一种权限验证装置,所述装置包括:
第一获取模块,用于获取针对目标数据的第一操作请求,所述第一操作请求携带有第一用户标识和所述目标数据的数据标识;
第二获取模块,用于从存储的用户标识和用户组标识的第一关联关系中获取与所述第一用户标识所关联的第一用户组标识;
第三获取模块,用于根据所述目标数据的数据标识,从存储的权限信息获取所述第一用户标识对应的操作所述目标数据的一个或多个第一操作权限,以及获取所述第一用户组标识对应的操作所述目标数据的一个或多个第二操作权限;
权限验证模块,用于根据所述一个或多个第一操作权限和所述一个或多个第二操作权限,对所述第一操作请求所需的目标操作权限进行验证。
可选地,所述一个或多个第一操作权限和所述一个或多个第二操作权限中包括允许操作权限,所述权限验证模块主要用于:
如果所述允许操作权限中包含所述目标操作权限,且所述一个或多个第一操作权限和所述一个或多个第二操作权限还包括不允许操作权限,则判断所述不允许操作权限中是否包含所述目标操作权限;
如果所述不允许操作权限中不包含所述目标操作权限,则对所述目标操作权限的验证通过。
可选地,所述权限验证模块还用于:
如果所述允许操作权限中不包含所述目标操作权限,或者,如果所述不允许操作权限中包含所述目标操作权限,则对所述目标操作权限的验证未通过。
可选地,所述装置还用于:
从权限数据管理服务器中获取所述权限信息,所述权限信息用于指示不同用户和不同用户组对不同的数据的操作权限;
根据所述权限信息获取多个用户标识和多个用户组标识;
从所述权限数据管理服务器中获取所述多个用户标识中每个用户标识关联的用户组标识,以及获取所述多个用户组标识中每个用户组标识关联的用户标识,所述权限数据管理服务器中存储有用户标识和用户组标识的第二关联关系,所述第二关联关系包括所述第一关联关系;
根据获取到的每个用户标识关联的用户组标识、每个用户组标识关联的用户标识,生成所述第一关联关系。
可选地,该装置还用于:
每当到达同步时刻时,从所述权限数据管理服务器中获取从第一时刻到当前时刻之间发生变更的权限信息,所述第一时刻为最近一次从所述权限数据管理服务器中成功同步权限信息的时刻;
根据所述发生变更的权限信息对存储的所述权限信息进行更新;
根据更新后的权限信息从所述权限数据管理服务器中获取从所述第一时刻到当前时刻之间发生变更的关联关系;
根据所述发生变更的关联关系对所述第一关联关系进行更新。
另一方面,提供了一种权限验证装置,所述装置包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器执行所述存储器中的可执行指令来执行上述权限验证方法。
另一方面,提供了一种计算机可读存储介质,所述存储介质内存储有计算机程序,所述计算机程序被计算机执行时实现上述所述权限验证方法的步骤。
另一方面,提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述的权限验证方法的步骤。
本申请实施例提供的技术方案带来的有益效果至少包括:
在本申请实施例中,鉴权设备存储了权限信息,以及用户标识和用户组标识的第一关联关系。在此基础上,在对接收到的操作请求进行验证时,鉴权设备可以直接从自身存储的第一关联关系中获取第一操作请求中携带的第一用户标识所关联的第一用户组标识,进而根据自身存储的权限信息来实现权限验证,无需从外部服务器中获取用户标识关联的用户组标识,减少了鉴权设备与外部服务器之间的交互,从而减小了外部服务器的访问压力,缩短了权限验证所需耗费的时间,并且,由于不需要从外部服务器获取用户标识关联的用户组标识,所以,即使外部服务器异常,也能为用户提供鉴权服务,可用性较高。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种权限验证方法所涉及的系统架构图;
图2是本申请实施例提供的一种权限验证方法的流程图;
图3是本申请实施例提供的另一种权限验证方法的流程图;
图4是本申请实施例提供的一种权限验证装置的结构示意图;
图5是本申请实施例提供的一种用于权限验证的终端设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
在对本申请实施例进行详细的解释说明之前,先对本申请实施例涉及的系统架构进行介绍。
图1是本申请实施例提供的一种权限验证方法所涉及的系统架构图。如图1所示,该系统包括用户终端设备101、鉴权设备102和权限数据管理服务器103,其中,用户终端设备101和鉴权设备102之间能够进行通信,鉴权设备102和权限数据管理服务器103之间能够进行通信。
在本申请实施例中,用户终端设备101接收用户针对目标数据的操作,根据该操作生成一个操作请求,将该操作请求发送至鉴权设备102。其中,该操作请求包含有用户标识和目标数据的数据标识。
鉴权设备102用于接收用户终端设备101发送的操作请求。之后,鉴权设备102可以通过本申请实施例提供的权限验证方法,对接收到的该操作请求所需的操作权限进行验证。
需要说明的是,在本申请实施例中,鉴权设备102可以包括大数据组件1021、权限验证插件1022和数据存储单元1023。其中,数据存储单元1023中存储有权限信息以及用户标识与用户组标识之间的第一关联关系。
示例性地,大数据组件1021用于接收用户终端设备101发送的操作请求,并从该操作请求中获取用户标识以及目标数据的数据标识,除此之外,该大数据组件1021还可以根据该操作请求确定该操作请求所需的目标操作权限。之后,该大数据组件1021可以将该操作请求中携带的用户标识、目标数据的数据标识以及所需的目标操作权限转发至权限验证插件1022。
权限验证插件1022在接收到大数据组件1021转发的用户标识、目标数据的数据标识以及目标操作权限之后,可以根据数据存储单元1023中存储的第一关联关系,确定用户标识所关联的用户组标识,之后,根据该用户标识、获取到的用户组标识以及数据存储单元1023中存储的权限信息来对目标操作权限进行验证。
可选地,权限验证插件1022可以配置不同的鉴权模式,其中,鉴权模式包括无鉴权模式、异步鉴权模式、仅支持用户标识鉴权模式和同步鉴权模式,用户可以根据实际场景情况选择具体的鉴权模式,实现鉴权模式的灵活切换。其中,当鉴权模式被配置为异步鉴权模式时,即可以通过本申请实施例的权限验证方法对用户所触发的操作请求所需的操作权限进行验证。
权限数据管理服务器103用于管理和存储权限信息,并定时将自身的权限信息同步至鉴权设备102中。其中,该权限信息用于指示不同用户和不同用户组对不同的数据的操作权限。除此之外,权限数据管理服务器103中还可以存储有用户标识和用户组标识之间的关联关系。其中,该关联关系可以是权限数据管理服务器根据自身存储的权限信息中的用户标识和用户组标识,从LDAP服务器中获取的,本申请实施例对此不做限定。
需要说明的是,在本申请实施例中,用户终端设备101可以为诸如智能手机、平板电脑、笔记本电脑、台式计算机等终端设备。鉴权设备102也可以是终端设备,例如,智能手机、平板电脑、笔记本电脑、台式计算机,或者,鉴权设备102也可以是一个服务器或一个服务器集群。权限数据管理服务器103可以是一个服务器或一个服务器集群,本申请实施例对此不做限定。
可选地,在一种可能的实现架构中,用户终端设备101的功能也可以由鉴权设备102来实现,在这种情况中,鉴权设备102可以接收用户针对目标数据的操作,根据该操作生成一个操作请求,之后,利用本申请实施例提供的权限验证方法对该操作请求所需的目标操作权限进行验证。
接下来对本申请实施例提供的权限验证方法进行介绍。
图2是本申请实施例提供的一种权限验证方法。如图2所示,该方法包括以下步骤:
步骤201:获取针对目标数据的第一操作请求,第一操作请求携带有第一用户标识和目标数据的数据标识。
在本申请实施例中,根据前述系统架构介绍,在一种可能的实现方式中,用户可以在用户终端设备上执行针对目标数据的一个操作,其中,该操作可以是指修改操作、删除操作或者是读取操作等。用户终端设备在接收到该操作之后,根据该操作生成第一操作请求,并将该第一操作请求发送至鉴权设备。相应地,鉴权设备接收用户终端设备发送的针对目标数据的第一操作请求。其中,该第一操作请求携带第一用户标识和目标数据的数据标识。其中,第一用户标识用于唯一标识触发该操作请求的用户。
需要说明的是,鉴权设备中可以包括大数据组件、权限验证插件和数据存储单元,基于此,在本申请实施例中,可以由鉴权设备中的大数据组件接收第一操作请求。
或者,在另一种可能的实现方式中,鉴权设备中包含有大数据组件,该大数据组件可以为一个用于访问大数据的大数据应用。基于此,用户可以在鉴权设备显示的大数据组件的界面中执行针对目标数据的操作,该大数据组件可以根据该操作生成第一操作请求。
步骤202:从存储的用户标识和用户组标识的第一关联关系中获取与第一用户标识所关联的第一用户组标识。
在本申请实施例中,鉴权设备存储了第一关联关系,该第一关联关系是根据鉴权设备获取到的每个用户标识关联的用户组标识、每个用户组标识关联的用户标识生成的。接下来,首先对生成第一关联关系的过程进行介绍。
示例性地,鉴权设备从权限数据管理服务器中获取权限信息,其中,权限信息用于指示不同用户和不同用户组对不同的数据的操作权限;根据权限信息获取多个用户标识和多个用户组标识;从权限数据管理服务器中获取多个用户标识中每个用户标识关联的用户组标识,以及获取多个用户组标识中每个用户组标识关联的用户标识,权限数据管理服务器中存储有用户标识和用户组标识的第二关联关系,其中,第二关联关系包括第一关联关系;根据获取到的每个用户标识关联的用户组标识、每个用户组标识关联的用户标识,生成第一关联关系。
其中,如果鉴权设备是第一次对操作请求进行验证,该鉴权设备将第一次加载权限验证插件。此时,该鉴权设备可以通过权限验证插件向权限数据管理服务器发送权限获取请求。
可选地,由于大数据组件的种类可能包括多种,或者,同一种大数据组件可能面向不同企业、不同群体会有不同的版本,这样,不同的大数据组件面向的用户、用户组将有可能不同,相应地,不同的大数据组件的用户、用户组所能访问的数据以及对数据的操作权限也可能不同。换句话说,不同的大数据组件可能对应有不同的权限信息。基于此,在本申请实施例中,权限获取请求中可以携带有该鉴权设备中的大数据组件的组件标识,以从权限数据管理服务器中获取该大数据组件对应的权限信息。其中,该组件标识能够唯一标识该大数据组件,例如,该组件标识可以为大数据组件的组件名称,或者,大数据组件的组件名称和版本号的综合等,本申请实施例对此不做限定。
权限数据管理服务器在接收到权限获取请求后,根据该权限获取请求获取自身存储的权限信息,并将该权限信息返回至鉴权设备。
其中,权限数据管理服务器中存储有权限信息。该权限信息包括多个数据的数据标识、每个数据的数据标识对应的用户标识和用户组标识、每个用户标识对应的对相应数据标识所标识的数据的操作权限、以及每个用户组标识对应对相应数据标识所标识的数据的操作权限。其中,该操作权限可以包括允许操作权限和不允许操作权限,允许操作权限是指允许对相应数据执行的操作,不允许操作权限是指不允许对相应数据执行的操作。示例性地,允许操作权限可以是允许读取权限、允许修改权限和允许删除权限等,同样,不允许操作权限也可以包括不允许读取权限、不允许修改权限和不允许删除权限等。
表1是本申请实施例示出的一种权限信息,如表1所示,该权限信息包括数据标识1对应的用户标识A、用户标识B,其中,用户标识A所标识的用户对数据标识1所标识的数据具有读取权限,但是不能对数据1进行修改,用户标识B所标识的用户对数据标识1所标识的数据具有读取和修改权限,没有不允许权限。另外,数据标识1还对应用户组标识a,其中,用户组标识a对数据1具有读取权限和修改权限,且没有不允许权限。同理,数据标识2和3对应的各个用户标识的操作权限和用户组标识的操作权限如表1中所示,本申请实施例对此不再赘述。
表1权限信息
上述仅是本申请实施例给出的一种权限信息的组织形式的示例,当然,该权限信息也可以以其他方式进行存储,本申请实施例对此不做限定。
当权限数据管理服务器接收到的权限获取请求中不包括大数据组件的组件标识时,权限数据管理服务器可以直接将自身存储的所有权限信息均反馈至鉴权设备。
可选地,当权限获取请求中包括大数据组件的组件标识时,权限数据管理服务器可以从自身存储的组件标识与权限信息的对应关系中,获取该鉴权设备的大数据组件对应的权限信息,并将获取到的权限信息返回至鉴权设备。
由前述对权限信息的介绍可知,权限信息中包含有用户标识和用户组标识,因此,在获取到权限信息之后,鉴权设备可以提取权限信息中包含的用户标识和用户组标识,并对提取到的用户标识和用户组标识去重,从而得到多个用户标识和多个用户组标识。
在获取到多个用户标识和多个用户组标识之后,对于每个用户标识,鉴权设备可以从权限数据管理服务器中获取该用户标识关联的用户组标识;对于每个用户组标识,鉴权设备也可以从权限数据管理服务器中获取该用户组标识关联的用户标识。
其中,权限数据管理服务器中还存储有用户标识和用户组标识之间的第二关联关系。在该第二关联关系中,每个用户标识可以关联一个或多个用户组标识,每个用户组标识同样可以关联一个或多个用户标识。其中,对于任一个用户标识,其关联的用户组标识即为该用户标识所标识的用户所属的用户组的标识。相应地,对于任一个用户组标识,其关联的用户标识即为该用户组标识所标识的用户组所包含的用户的标识。
需要说明的是,该第二关联关系中的用户标识和用户组标识包括该权限数据管理服务器中存储的所有权限信息中的用户标识和用户组标识,因此可知,该第二关联关系中的用户标识将包含有鉴权设备获取到的权限信息中的用户标识,同样第二关联关系中的用户组标识将包含有鉴权设备获取到的权限信息中的用户组标识。基于此,在本申请实施例中,对于鉴权设备获取到的每个用户标识,该鉴权设备可以将相应地用户标识发送至权限数据管理服务器。权限数据管理服务器在接收到鉴权设备发送的用户标识之后,可以从自身存储的第二关联关系中获取该用户标识关联的用户组标识,进而将获取到的用户组标识返回至鉴权设备。如此,鉴权设备即能够得到自身获取的权限信息中每个用户标识所关联的用户组标识。同理,对于每个用户组标识,鉴权设备也可以参考上述方法,从权限数据管理服务器中获取每个用户组标识所关联的用户标识。
在获取到每个用户标识关联的用户组标识和每个用户组标识所关联的用户标识之后,鉴权设备可以将用户标识与其关联的用户组标识对应存储,将用户组标识所关联的用户标识与其对应存储,从而得到第一关联关系。
例如,假设鉴权设备从获取到的权限信息中提取到用户标识A、用户标识B和用户标识C、以及用户组标识a、用户组标识b和用户组标识c。将用户标识A、用户标识B、用户标识C、用户组标识a、用户组标识b和用户组标识c发送至权限数据管理服务器中,权限数据管理服务器根据第二关联关系,查找到用户标识A关联的用户组标识a、用户标识B关联的用户组标识b和c、用户标识C关联的用户组标识c,以及用户组标识a关联的用户标识A和用户标识D、用户组标识b关联的用户标识B、用户组标识c关联的用户标识B和用户标识C,根据上述获取到的各个用户标识关联的用户组标识以及用户组标识关联的用户标识,可以生成下述的表2中所示的第一关联关系,或者,也可以生成如下表3所示的第一关联关系。
表2第一关联关系
用户标识 | 用户组标识 |
A | a |
B | b,c |
C | c |
D | a |
表3第一关联关系
用户组标识 | 用户标识 |
a | A、D |
b | B |
c | B、C |
需要说明的是,上述仅是本申请实施例给出的两种第一关联关系的可能的实现方式,可选地,第一关联关系也可以同时包括上述表2和表3中的关联关系,本申请实施例对此不做限定。另外,上述表2和表3中的数据仅用于示例性说明,其并不构成对第一关联关系中的数据的限定。
在鉴权设备第一次加载权限验证插件获取到权限信息和第一关联关系之后,后续,鉴权设备还可以定时从权限数据管理服务器中同步发生变更的权限信息和关联关系,以对自身存储的权限信息和第一关联关系进行更新。
示例性地,每当到达同步时刻时,鉴权设备可以从权限数据管理服务器中获取从第一时刻到当前时刻之间发生变更的权限信息,其中,第一时刻为最近一次从权限数据管理服务器中成功同步权限信息的时刻。根据发生变更的权限信息对存储的权限信息进行更新;根据发生变更的权限信息从权限数据管理服务器中获取从第一时刻到当前时刻之间发生变更的关联关系;根据发生变更的关联关系对第一关联关系进行更新。
其中,在鉴权设备运行的过程中,可以按照一定的时间间隔从权限数据管理服务器中进行数据同步,此时,每相邻的两个同步时刻之间的时间间隔将相同。可选地,当鉴权设备关闭后再启动时,该启动时刻即可以作为一个同步时刻,或者,当鉴权设备中的大数据组件启动时,该启动时刻即可以作为一个同步时刻。
基于此,当到达一个同步时刻时,鉴权设备可以向权限数据管理服务器发送权限同步请求。权限数据管理服务器在接收到该权限同步请求之后,可以向鉴权设备返回从第一时刻到当前的同步时刻之间发生变更的权限信息。
其中,权限数据管理服务器中存储有鉴权设备上一次同步权限数据成功的时刻,也即第一时刻,该第一时刻有可能是当前的同步时刻的上一个同步时刻,也有可能是当前的同步时刻之前的其他同步时刻。另外,权限同步请求中可以携带当前的同步时刻,并且,权限数据管理服务器中存储的权限信息可以对应有最近一次修改的时刻以及修改内容。基于此,权限数据管理服务在接收到权限同步请求之后,可以获取该鉴权设备上一次同步权限数据成功的第一时刻。之后,确定最近一次修改的时刻位于该第一时刻和当前的同步时刻之间的权限信息。根据确定的权限信息对应的修改内容,获取发生变更的权限信息,将获取到的发生变更的权限信息返回至鉴权设备。
鉴权设备在接收到权限数据管理服务器返回的发生变更的权限信息之后,根据发生变更的权限信息对存储的权限信息进行更新。
其中,发生变更的权限信息可能包括当前存储的权限信息中已有的数据标识对应的新增的用户标识或用户组标识以及对应的操作权限、已有的用户标识或用户组标识对应的新增或修改后的操作权限、新增的数据标识以及对应的用户标识、用户组标识和相应地操作权限等等。
基于此,对于当前存储的权限信息中已有的数据标识对应的新增的用户标识或用户组标识以及对应的操作权限,鉴权设备可以为相应的数据标识添加对应的新增用户标识和对应的操作权限以及新增用户组标识和对应的操作权限。对于已有的用户标识或用户组标识对应的新增或修改后的操作权限,可以添加或修改相应的操作权限。对于新增的数据标识以及对应的用户标识、用户组标识和相应地操作权限,则可以直接在权限信息中添加新增的数据标识、对应的用户标识、用户组标识和相应地操作权限。
在接收到权限数据管理服务器返回的发生变更的权限信息之后,该鉴权设备还可以根据发生变更的权限信息对存储的第一关联关系进行更新。
在一种可能的实现方式中,鉴权设备可以从发生变更的权限信息中提取用户标识和用户组标识,之后,参考前述介绍的方法,从权限数据管理服务器中获取提取到的每个用户标识关联的用户组标识以及提取到每个用户组标识关联的用户标识。之后,根据获取到的每个用户标识关联的用户组标识以及每个用户组标识关联的用户标识对第一关联关系进行更新。
其中,在更新的过程中,对于任一个用户标识,如果第一关联关系中包含有该用户标识且该用户标识对应的用户组标识包含当前获取到的关联的用户组标识相同,则可以不进行更新,如果第一关联关系中包含有该用户标识且该用户标识对应的用户组标识中不包含当前获取到的关联的用户组标识,则可以为该用户标识添加该关联的用户组标识。如果第一关联关系中不包含该用户标识,则可以直接在第一关联关系中添加该用户标识以及对应的用户组标识。同理,对于用户组标识,也可以参考上述方法进行更新,本申请实施例在此不再赘述。
可选地,在一些可能的实现方式中,鉴权设备也可以在根据发生变更的权限信息得到更新后的权限信息之后,根据更新后的权限信息从权限数据管理服务器中获取从第一时刻到当前时刻之间发生变更的权限信息的关联关系,进而根据发生变更的关联关系对第一关联关系进行更新。
其中,鉴权设备提取更新后的权限信息中的多个用户标识和多个用户组标识,进而从权限数据管理服务器中获取每个用户标识关联的用户组标识以及每个用户组关联的用户标识,之后,根据上述介绍的方法对第一关联关系进行更新。
或者,在一些可能的实现方式中,鉴权设备也可以在向权限数据管理服务器发送权限同步请求的同时,发生关联关系同步请求。在这种情况下,权限数据管理服务器中的第二关联关系可以对应有最近一次修改的时刻以及修改内容,这样,权限数据管理服务器在接收到关联关系同步请求之后,可以根据上述介绍的获取发生变更后的权限信息的方法,获取发生变更后的关联关系,进而将该发生变更后的关联关系返回至鉴权设备。
可选地,权限数据管理服务器中的第二关联关系中还可以包含有组件标识,以标识第二关联关系中的哪些映射条目对应哪些组件。这样,在上述介绍的生成第一关联关系的过程中获取每个用户标识关联的用户组标识和每个用户组标识关联的用户标识时,还可以根据组件标识,从对应的映射条目中获取。相应地,在获取发生变更的关联关系时,也可以根据该组件标识进行获取,本申请实施例在此不再赘述。
在本步骤中,鉴权设备在获取到第一操作请求之后,获取第一操作请求中包含的第一用户标识,之后,即可以从存储的第一关联关系中获取第一用户标识对应的第一用户组标识。此时,该第一用户组标识可能有一个,也可能有多个。
步骤203:根据目标数据的数据标识,从存储的权限信息获取第一用户标识对应的操作目标数据的一个或多个第一操作权限,以及获取第一用户组标识对应的操作目标数据的一个或多个第二操作权限。
在获取到第一用户标识以及第一用户组标识之后,由前述介绍可知,鉴权设备中存储有权限信息。因此,鉴权设备可以从存储的权限信息中,获取目标数据的数据标识对应的用户标识以及各个用户标识对应的操作权限。如果目标数据的数据标识对应的用户标识中包含有第一用户标识,则获取第一用户标识对应的一个或多个第一操作权限。其中,该一个或多个第一操作权限有可能包含有允许操作权限和/或不允许操作权限,或者,也可能为无权限。例如,如果目标数据的数据标识对应的用户标识不包含有第一用户标识,则确定第一用户标识对应的操作该目标数据的第一操作权限为无权限。另外,鉴权设备可以参考上述方式获取第一用户组标识对应的一个或多个第二操作权限。其中,第二操作权限可能包含有允许操作权限和/或不允许操作权限,或者也可能为无权限。
步骤204:根据一个或多个第一操作权限和一个或多个第二操作权限,对第一操作请求所需的目标操作权限进行验证。
在获取到第一用户标识对应的一个或多个第一操作权限、第一用户组标识对应的一个或多个第二操作权限之后,鉴权设备可以根据第一操作请求确定第一操作请求所需的目标操作权限。
其中,鉴权设备中可以存储有操作请求的类型与操作权限之间的映射关系。例如,操作请求的类型为修改操作请求,则对应的操作权限为修改操作权限。如果操作请求的类型为读取操作请求,则对应的操作权限为读取操作权限等。
基于此,鉴权设备可以从该映射关系中获取第一操作请求的类型对应的操作权限,从而得到目标操作权限。
在确定目标操作权限之后,鉴权设备可以从一个或多个第一操作权限以及一个或多个第二操作权限中获取允许操作权限,也即,获取第一用户标识和第一用户组标识对应的允许对该目标数据执行的操作。如果该允许操作权限包含有该目标操作权限,则鉴权设备可以进一步从一个或多个第一操作权限以及一个或多个第二操作权限中获取不允许操作权限,也即不允许对该目标数据执行的操作。如果该不允许操作权限中不包含有该目标操作权限,则说明第一用户标识所标识的用户以及该用户对应的用户组对该目标数据具有目标操作权限,且该目标操作权限不是第一用户标识所标识的用户或对应的用户组不允许的操作权限,此时,则对目标操作权限的验证通过。如果鉴权设备在一个或多个第一操作权限以及一个或多个第二操作权限中没有找到不允许操作权限,则说明第一用户标识所标识的用户以及该用户对应的用户组对该目标数据具有目标操作权限,此时,对该目标操作权限的验证通过。
可选地,如果从一个或多个第一操作权限以及一个或多个第二操作权限中获取到的允许操作权限中不包含目标操作权限,或者,如果从一个或多个第一操作权限以及一个或多个第二操作权限中获取到的不允许操作权限中包含目标操作权限,则对目标操作权限的验证未通过。
需要说明的是,如果允许操作权限中不包含目标操作权限,则说明第一用户标识所标识的用户以及该用户所属的用户组均不具有该目标操作权限,此时,对目标操作权限的验证不通过。
如果不允许操作权限中包含有该目标操作权限,则说明第一用户标识所标识的用户和该用户所属的用户组中有一个是不允许对目标数据执行该目标操作的,此时,对该目标操作权限的验证也为不通过。
在本申请实施例中,鉴权设备存储了权限信息,以及用户标识和用户组标识的第一关联关系。在此基础上,在对接收到的操作请求进行验证时,鉴权设备可以直接从自身存储的第一关联关系中获取第一操作请求中携带的第一用户标识所关联的第一用户组标识,进而根据自身存储的权限信息来实现权限验证,无需从外部服务器中获取用户标识关联的用户组标识,减少了鉴权设备与外部服务器之间的交互,从而减小了外部服务器的访问压力,缩短了权限验证所需耗费的时间,并且,由于不需要从外部服务器获取用户标识关联的用户组标识,所以,即使外部服务器异常,也能为用户提供鉴权服务,可用性较高。
另外,在本申请实施例中,鉴权设备可以从权限数据管理服务器中同步发生变更的权限信息和关联关系,以此自身存储的权限信息和关联关系进行更新,以此保证自身存储的权限信息和关联关系的准确性,进而提高权限验证的准确性。
第三,在本申请实施例中,鉴权设备在更新权限信息和关联关系时,可以从权限数据管理服务器中同步发生变更的信息,而不是同步全部的信息,这样,可以减少所需传输的数据量,从而减少带宽占用。
最后,在本申请实施例中,用户还可以在鉴权设备的权限验证插件中配置鉴权模式,其中,鉴权模式可以包括无鉴权模式、异步鉴权模式、仅支持用户标识鉴权模式和同步鉴权模式,用户可以根据实际场景情况选择具体的鉴权模式,实现鉴权模式的灵活切换。其中,当鉴权模式被配置为异步鉴权模式时,即可以通过本申请实施例的权限验证方法对用户所触发的操作请求所需的操作权限进行验证。无鉴权模式是指对接收到的操作请求的操作权限不进行验证,直接允许进行相应的操作。仅支持用户名鉴权模式则是指根据操作请求中的用户标识对应的一个或多个第一操作权限对目标操作权限进行验证。同步鉴权模式则是指在获取到操作请求之后,根据操作请求中的用户标识实时从LDAP服务器中获取关联用户组标识,进而根据用户标识对应的第一操作权限和用户组标识对应的第二操作权限对目标操作权限进行验证。
接下来通过一个示例来对上述权限验证的过程进行举例说明。如图3所示,该方法包括以下步骤:
1、鉴权设备中的大数据组件在第一次加载权限验证插件时,向权限数据管理服务器发送权限获取请求,该权限获取请求中携带有大数据组件的组件标识。
2、权限数据管理服务器返回该大数据组件对应的权限信息。
3、权限验证插件从权限信息中获取多个用户标识和多个用户组标识。
4、权限验证插件向权限数据管理服务器发送多个用户标识和多个用户组标识。
5、权限数据管理服务器返回每个用户标识关联的用户组标识和每个用户组标识关联的用户标识。
6、权限验证插件根据每个用户标识关联的用户组标识和每个用户组标识关联的用户标识,生成第一关联关系。
7、大数据组件获取第一操作请求,第一操作请求包含有第一用户标识和目标数据的数据标识。
8、大数据组件向权限验证插件发送第一用户标识和目标数据的数据标识。
9、权限验证插件从第一关联关系中获取第一用户标识关联的第一用户组标识。
10、权限验证插件根据目标数据的数据标识,从存储的权限信息获取第一用户标识对应的操作目标数据的一个或多个第一操作权限,以及获取第一用户组标识对应的操作目标数据的一个或多个第二操作权限。
11、权限验证插件根据一个或多个第一操作权限和一个或多个第二操作权限,对第一操作请求所需的目标操作权限进行验证。
接下来,对本申请实施例提供的权限验证装置进行介绍。
参见图4,本申请实施例提供了一种权限验证装置400,装置400包括:
第一获取模块401,用于获取针对目标数据的第一操作请求,第一操作请求携带有第一用户标识和目标数据的数据标识;
第二获取模块402,用于从存储的用户标识和用户组标识的第一关联关系中获取与第一用户标识所关联的第一用户组标识;
第三获取模块403,用于根据目标数据的数据标识,从存储的权限信息获取第一用户标识对应的操作目标数据的一个或多个第一操作权限,以及获取第一用户组标识对应的操作目标数据的一个或多个第二操作权限;
权限验证模块404,用于根据一个或多个第一操作权限和一个或多个第二操作权限,对第一操作请求所需的目标操作权限进行验证。
可选地,一个或多个第一操作权限和一个或多个第二操作权限中包括允许操作权限,权限验证模块404主要用于:
如果允许操作权限中包含目标操作权限,且一个或多个第一操作权限和一个或多个第二操作权限还包括不允许操作权限,则判断不允许操作权限中是否包含目标操作权限,
如果不允许操作权限中不包含目标操作权限,则对目标操作权限的验证通过。
可选地,权限验证模块404还用于:
如果允许操作权限中不包含目标操作权限,或者,如果不允许操作权限中包含目标操作权限,则对目标操作权限的验证未通过。
可选地,该装置400还用于:
从权限数据管理服务器中获取权限信息,权限信息用于指示不同用户和不同用户组对不同的数据的操作权限;
根据权限信息获取多个用户标识和多个用户组标识;
从权限数据管理服务器中获取多个用户标识中每个用户标识关联的用户组标识,以及获取多个用户组标识中每个用户组标识关联的用户标识,权限数据管理服务器中存储有用户标识和用户组标识的第二关联关系,第二关联关系包括第一关联关系;
根据获取到的每个用户标识关联的用户组标识、每个用户组标识关联的用户标识,生成第一关联关系。
可选地,生成第一关联关系之后,该装置400还用于:
每当到达同步时刻时,从权限数据管理服务器中获取从第一时刻到当前时刻之间发生变更的权限信息,第一时刻为最近一次从权限数据管理服务器中成功同步权限信息的时刻;
根据发生变更的权限信息对存储的权限信息进行更新;
根据更新后的权限信息从权限数据管理服务器中获取从第一时刻到当前时刻之间发生变更的关联关系;
根据发生变更的关联关系对第一关联关系进行更新。
综上所述,在本申请实施例中,鉴权设备存储了权限信息,以及用户标识和用户组标识的第一关联关系。在此基础上,在对接收到的操作请求进行验证时,鉴权设备可以直接从自身存储的第一关联关系中获取第一操作请求中携带的第一用户标识所关联的第一用户组标识,进而根据自身存储的权限信息来实现权限验证,无需从外部服务器中获取用户标识关联的用户组标识,减少了鉴权设备与外部服务器之间的交互,从而减小了外部服务器的访问压力,缩短了权限验证所需耗费的时间。
需要说明的是,上述实施例提供的权限验证装置在权限验证时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的权限验证装置与权限验证方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图5是根据一示例性实施例示出的一种用于权限验证的终端500的结构框图。上述实施例中的鉴权设备即可通过该终端500来实现。其中,该终端500可以是智能手机、平板电脑、笔记本电脑、台式电脑等。
通常,终端500包括有:处理器501和存储器502。
处理器501可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器501可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器501也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器501可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器501还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器502可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器502还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器502中的非暂态的计算机可读存储介质用于存储至少一个指令,其中,该至少一个指令用于被处理器501所执行以实现本申请中方法实施例提供的权限验证方法。
在一些实施例中,终端500还可选包括有:外围设备接口503和至少一个外围设备。处理器501、存储器502和外围设备接口503之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口503相连。具体地,外围设备包括:射频电路504、显示屏505、摄像头组件505、音频电路507、定位组件508和电源509中的至少一种。
外围设备接口503可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器501和存储器502。在一些实施例中,处理器501、存储器502和外围设备接口503被集成在同一芯片或电路板上;在一些其他实施例中,处理器501、存储器502和外围设备接口503中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路504用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路504通过电磁信号与通信网络以及其他通信设备进行通信。射频电路504将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路504包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路504可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:万维网、城域网、内联网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路504还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏505用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏4505是触摸显示屏时,显示屏505还具有采集在显示屏505的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器501进行处理。此时,显示屏505还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏505可以为一个,设置终端500的前面板;在另一些实施例中,显示屏505可以为至少两个,分别设置在终端500的不同表面或呈折叠设计;在再一些实施例中,显示屏505可以是柔性显示屏,设置在终端500的弯曲表面上或折叠面上。甚至,显示屏505还可以设置成非矩形的不规则图形,也即异形屏。显示屏505可以采用LCD(Liquid Crystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。需要说明的是,在本申请实施例中,当该终端500为横屏终端时,该终端500的显示屏的宽高比大于1,例如,该终端500的显示屏的宽高比可以为15:9或4:3。当该终端500为竖屏终端时,则该终端500的显示屏的宽高比小于1,例如,该终端500的显示屏的宽高比可以为9:18或3:4等。
摄像头组件505用于采集图像或视频。可选地,摄像头组件505包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件505还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路507可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器501进行处理,或者输入至射频电路504以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端500的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器501或射频电路504的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路507还可以包括耳机插孔。
定位组件508用于定位终端500的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件508可以是基于GPS(Global PositioningSystem,全球定位系统)、北斗系统或伽利略系统的定位组件。
电源509用于为终端500中的各个组件进行供电。电源509可以是交流电、直流电、一次性电池或可充电电池。当电源509包括可充电电池时,该可充电电池可以是有线充电电池或无线充电电池。有线充电电池是通过有线线路充电的电池,无线充电电池是通过无线线圈充电的电池。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端500还包括有一个或多个传感器510。该一个或多个传感器510包括但不限于:加速度传感器511、陀螺仪传感器512、压力传感器513、指纹传感器514、光学传感器515以及接近传感器515。
加速度传感器511可以检测以终端500建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器511可以用于检测重力加速度在三个坐标轴上的分量。处理器501可以根据加速度传感器511采集的重力加速度信号,控制显示屏505以横向视图或纵向视图进行用户界面的显示。加速度传感器511还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器512可以检测终端500的机体方向及转动角度,陀螺仪传感器512可以与加速度传感器511协同采集用户对终端500的3D动作。处理器501根据陀螺仪传感器512采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器513可以设置在终端500的侧边框和/或显示屏505的下层。当压力传感器513设置在终端500的侧边框时,可以检测用户对终端500的握持信号,由处理器501根据压力传感器513采集的握持信号进行左右手识别或快捷操作。当压力传感器513设置在显示屏505的下层时,由处理器501根据用户对显示屏505的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器514用于采集用户的指纹,由处理器501根据指纹传感器514采集到的指纹识别用户的身份,或者,由指纹传感器514根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器501授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器514可以被设置终端500的正面、背面或侧面。当终端500上设置有物理按键或厂商Logo时,指纹传感器514可以与物理按键或厂商Logo集成在一起。
光学传感器515用于采集环境光强度。在一个实施例中,处理器501可以根据光学传感器515采集的环境光强度,控制显示屏505的显示亮度。具体地,当环境光强度较高时,调高显示屏505的显示亮度;当环境光强度较低时,调低显示屏505的显示亮度。在另一个实施例中,处理器501还可以根据光学传感器515采集的环境光强度,动态调整摄像头组件505的拍摄参数。
接近传感器515,也称距离传感器,通常设置在终端500的前面板。接近传感器515用于采集用户与终端500的正面之间的距离。在一个实施例中,当接近传感器515检测到用户与终端500的正面之间的距离逐渐变小时,由处理器501控制显示屏505从亮屏状态切换为息屏状态;当接近传感器515检测到用户与终端500的正面之间的距离逐渐变大时,由处理器501控制显示屏505从息屏状态切换为亮屏状态。
也即是,本申请实施例不仅提供了一种终端,包括处理器和用于存储处理器可执行指令的存储器,其中,处理器被配置为执行图2或3所示的权限验证方法,而且,本申请实施例还提供了一种计算机可读存储介质,该存储介质内存储有计算机程序,该计算机程序被处理器执行时可以实现图2或3所示的权限验证方法。
本申请实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述图2或3所示实施例提供的权限验证方法。
以上所述并不用以限制本申请实施例,凡在本申请实施例的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请实施例的保护范围之内。
Claims (3)
1.一种权限验证方法,其特征在于,应用于鉴权设备,所述鉴权设备包括大数据组件和权限验证插件,所述方法包括:
通过所述大数据组件接收针对目标数据的第一操作请求,所述第一操作请求携带有第一用户标识和所述目标数据的数据标识;
从存储的用户标识和用户组标识的第一关联关系中获取与所述第一用户标识所关联的第一用户组标识;
根据所述目标数据的数据标识,从存储的所述大数据组件对应的权限信息中获取所述第一用户标识对应的操作所述目标数据的一个或多个第一操作权限,以及获取所述第一用户组标识对应的操作所述目标数据的一个或多个第二操作权限,所述大数据组件对应的权限信息是所述鉴权设备通过所述权限验证插件向权限数据管理服务器发送携带所述大数据组件的组件标识的权限获取请求,所述权限数据管理服务器从存储的组件标识和权限信息的对应关系中获取并发送给所述鉴权设备的,所述组件标识唯一标识所述大数据组件,所述一个或多个第一操作权限和所述一个或多个第二操作权限中包括允许操作权限;
如果所述允许操作权限中包含所述第一操作请求所需的目标操作权限,且所述一个或多个第一操作权限和所述一个或多个第二操作权限还包括不允许操作权限,则判断所述不允许操作权限中是否包含所述目标操作权限;如果所述不允许操作权限中不包含所述目标操作权限,则对所述目标操作权限的验证通过;
如果所述允许操作权限中不包含所述目标操作权限,或者,如果所述不允许操作权限中包含所述目标操作权限,则对所述目标操作权限的验证未通过;
所述方法还包括:
从所述权限数据管理服务器中获取所述权限信息,所述权限信息用于指示不同用户和不同用户组对不同的数据的操作权限,所述权限信息包括多个数据的数据标识、每个数据的数据标识对应的用户标识和用户标识、每个用户标识对应的对相应数据标识所标识的数据的操作权限、以及每个用户组标识对应对相应数据标识所标识的数据的操作权限;根据所述权限信息获取多个用户标识和多个用户组标识;从所述权限数据管理服务器中获取所述多个用户标识中每个用户标识关联的用户组标识,以及获取所述多个用户组标识中每个用户组标识关联的用户标识,所述权限数据管理服务器中存储有用户标识和用户组标识的第二关联关系,所述第二关联关系包括所述第一关联关系;根据获取到的每个用户标识关联的用户组标识、每个用户组标识关联的用户标识,生成所述第一关联关系;
每当到达同步时刻时,从所述权限数据管理服务器中获取从第一时刻到当前时刻之间发生变更的权限信息,所述第一时刻为最近一次从所述权限数据管理服务器中成功同步权限信息的时刻;根据所述发生变更的权限信息对存储的所述权限信息进行更新;根据所述发生变更的权限信息从所述权限数据管理服务器中获取从所述第一时刻到当前时刻之间发生变更的关联关系;根据所述发生变更的关联关系对所述第一关联关系进行更新。
2.一种权限验证装置,其特征在于,应用于鉴权设备,所述鉴权设备包括大数据组件和权限验证插件,所述装置包括:
第一获取模块,用于通过所述大数据组件接收针对目标数据的第一操作请求,所述第一操作请求携带有第一用户标识和所述目标数据的数据标识;
第二获取模块,用于从存储的用户标识和用户组标识的第一关联关系中获取与所述第一用户标识所关联的第一用户组标识;
第三获取模块,用于根据所述目标数据的数据标识,从存储的所述大数据组件对应的权限信息获取所述第一用户标识对应的操作所述目标数据的一个或多个第一操作权限,以及获取所述第一用户组标识对应的操作所述目标数据的一个或多个第二操作权限,所述大数据组件对应的权限信息是所述鉴权设备通过所述权限验证插件向权限数据管理服务器发送携带所述大数据组件的组件标识的权限获取请求,所述权限数据管理服务器从存储的组件标识和权限信息的对应关系中获取并发送给所述鉴权设备的,所述组件标识唯一标识所述大数据组件,所述一个或多个第一操作权限和所述一个或多个第二操作权限中包括允许操作权限;
权限验证模块,用于如果所述允许操作权限中包含所述第一操作请求所需的目标操作权限,且所述一个或多个第一操作权限和所述一个或多个第二操作权限还包括不允许操作权限,则判断所述不允许操作权限中是否包含所述目标操作权限;如果所述不允许操作权限中不包含所述目标操作权限,则对所述目标操作权限的验证通过;如果所述允许操作权限中不包含所述目标操作权限,或者,如果所述不允许操作权限中包含所述目标操作权限,则对所述目标操作权限的验证未通过;
所述装置还用于:从所述权限数据管理服务器中获取所述权限信息,所述权限信息用于指示不同用户和不同用户组对不同的数据的操作权限,所述权限信息包括多个数据的数据标识、每个数据的数据标识对应的用户标识和用户标识、每个用户标识对应的对相应数据标识所标识的数据的操作权限、以及每个用户组标识对应对相应数据标识所标识的数据的操作权限;根据所述权限信息获取多个用户标识和多个用户组标识;从所述权限数据管理服务器中获取所述多个用户标识中每个用户标识关联的用户组标识,以及获取所述多个用户组标识中每个用户组标识关联的用户标识,所述权限数据管理服务器中存储有用户标识和用户组标识的第二关联关系,所述第二关联关系包括所述第一关联关系;根据获取到的每个用户标识关联的用户组标识、每个用户组标识关联的用户标识,生成所述第一关联关系;
所述装置还用于:每当到达同步时刻时,从所述权限数据管理服务器中获取从第一时刻到当前时刻之间发生变更的权限信息,所述第一时刻为最近一次从所述权限数据管理服务器中成功同步权限信息的时刻;根据所述发生变更的权限信息对存储的所述权限信息进行更新;根据所述发生更新的权限信息从所述权限数据管理服务器中获取从所述第一时刻到当前时刻之间发生变更的关联关系;根据所述发生变更的关联关系对所述第一关联关系进行更新。
3.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被计算机执行时实现权利要求1所述权限验证方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111026871.7A CN113746831B (zh) | 2021-09-02 | 2021-09-02 | 权限验证方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111026871.7A CN113746831B (zh) | 2021-09-02 | 2021-09-02 | 权限验证方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113746831A CN113746831A (zh) | 2021-12-03 |
CN113746831B true CN113746831B (zh) | 2023-04-07 |
Family
ID=78734975
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111026871.7A Active CN113746831B (zh) | 2021-09-02 | 2021-09-02 | 权限验证方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113746831B (zh) |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107066877B (zh) * | 2017-03-31 | 2019-12-31 | 武汉票据交易中心有限公司 | 一种交易系统的权限变更方法及系统 |
CN110348236B (zh) * | 2018-04-02 | 2024-07-26 | 腾讯科技(深圳)有限公司 | 一种文件的操作权限设置方法、装置和存储介质 |
CN110417863B (zh) * | 2019-06-27 | 2021-01-29 | 华为技术有限公司 | 生成身份识别码的方法和装置、身份认证的方法和装置 |
CN112738007B (zh) * | 2019-10-28 | 2022-08-26 | 腾讯科技(深圳)有限公司 | 管理权限转让同步更新方法、装置和计算机可读存储介质 |
CN111193724B (zh) * | 2019-12-18 | 2021-08-17 | 腾讯科技(深圳)有限公司 | 鉴权方法、装置、服务器及存储介质 |
CN111125674B (zh) * | 2019-12-20 | 2022-03-22 | 中国银联股份有限公司 | 开放式数据处理系统、开放式数据系统及数据处理方法 |
CN112818309A (zh) * | 2021-03-04 | 2021-05-18 | 重庆度小满优扬科技有限公司 | 数据访问权限的控制方法、装置以及存储介质 |
-
2021
- 2021-09-02 CN CN202111026871.7A patent/CN113746831B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN113746831A (zh) | 2021-12-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108881030B (zh) | 灰度发布场景下的路由方法及装置 | |
CN108833607B (zh) | 物理地址获取方法、装置及可读介质 | |
CN111190748B (zh) | 数据共享方法、装置、设备及存储介质 | |
CN112256320B (zh) | 版本号生成方法、装置、终端及存储介质 | |
CN110058935B (zh) | 日志级别调整方法、装置及系统、可读存储介质 | |
CN111159604A (zh) | 图片资源加载方法及装置 | |
CN108848492B (zh) | 用户身份识别卡的启用方法、装置、终端及存储介质 | |
CN110851823A (zh) | 数据访问方法、装置、终端及存储介质 | |
CN112988254B (zh) | 管理硬件设备的方法、装置和设备 | |
CN109783176B (zh) | 切换页面的方法和装置 | |
CN113377647B (zh) | 页面处理方法、装置、服务器、终端及可读存储介质 | |
CN110825465B (zh) | 日志数据处理方法、装置、电子设备及存储介质 | |
CN111881423A (zh) | 限制功能使用授权方法、装置、系统 | |
CN112765571B (zh) | 权限管理方法、系统、装置、服务器及存储介质 | |
CN113746831B (zh) | 权限验证方法、装置及存储介质 | |
CN110971692B (zh) | 开通服务的方法、装置及计算机存储介质 | |
CN110968549B (zh) | 文件存储的方法、装置、电子设备及介质 | |
CN111191254B (zh) | 访问校验方法、装置、计算机设备及存储介质 | |
CN113076452A (zh) | 应用分类的方法、装置、设备及计算机可读存储介质 | |
CN107948171B (zh) | 一种用户账号管理的方法和装置 | |
CN108683684B (zh) | 登录目标即时通讯应用的方法、装置和系统 | |
CN111324431A (zh) | 应用切换方法及装置、计算机存储介质 | |
CN112612397B (zh) | 多媒体列表管理方法、装置、设备及存储介质 | |
CN114154099B (zh) | 路由信息处理方法、装置、设备及存储介质 | |
CN111414563B (zh) | 网页交互的方法、装置、计算机设备和存储介质 |
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 |