CN107657155B - 用于鉴定用户操作权限的方法和装置 - Google Patents

用于鉴定用户操作权限的方法和装置 Download PDF

Info

Publication number
CN107657155B
CN107657155B CN201610597712.5A CN201610597712A CN107657155B CN 107657155 B CN107657155 B CN 107657155B CN 201610597712 A CN201610597712 A CN 201610597712A CN 107657155 B CN107657155 B CN 107657155B
Authority
CN
China
Prior art keywords
task
execution
operation task
state
distributed cache
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
CN201610597712.5A
Other languages
English (en)
Other versions
CN107657155A (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 Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information Technology Co Ltd
Original Assignee
Beijing Jingdong Century Trading Co Ltd
Beijing Jingdong Shangke Information 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 Jingdong Century Trading Co Ltd, Beijing Jingdong Shangke Information Technology Co Ltd filed Critical Beijing Jingdong Century Trading Co Ltd
Priority to CN201610597712.5A priority Critical patent/CN107657155B/zh
Publication of CN107657155A publication Critical patent/CN107657155A/zh
Application granted granted Critical
Publication of CN107657155B publication Critical patent/CN107657155B/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/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请公开了用于鉴定用户操作权限的方法和装置。所述方法的一具体实施方式包括:响应于用户的操作请求,将权限数据推送到分布式缓存中;针对对分布式缓存进行的每一次操作,创建操作任务;将各个操作任务添加到保存在关系型数据库上的任务列表中;执行如下任务处理步骤:查找可执行的操作任务;根据任务状态对所查找到的操作任务进行处理,并将成功处理后的操作任务的任务状态修改为执行成功;确定任务列表中是否存在可执行的操作任务,如果不存在则从分布式缓存读取权限数据以确定用户是否具有操作权限;如果存在,则继续执行所述任务处理步骤。该实施方式解决了分布式缓存无法确保多次操作的事务性的问题。

Description

用于鉴定用户操作权限的方法和装置
技术领域
本申请涉及计算机技术领域,具体涉及互联网技术领域,尤其涉及用于鉴定用户操作权限的方法和装置。
背景技术
统一权限***中,会开放相关的鉴权接口给外部***调用判断用户是否有相关的操作权限。在比较大的公司,需要鉴权的外部***数以千计,因此相关鉴权接口基本保持在几万/每分钟的调用量。面对巨大的接口调用量,权限***在响应权限管理员操作的同时会将相关的权限数据主动推送到分布式缓存中,鉴权接口会优先从分布式缓存中获取权限数据从而支持较大的接口调用量。然而因业务的复杂性,完成推送权限数据到分布式缓存的业务一般会多次操作分布式缓存,分布式缓存又无法确保多次操作的事务性。
现有技术采用基于编程语言自身的异常处理机制进行分布式缓存事务的处理。程序从上往下顺序执行,当后一个分布式缓存操作失败之后,主动对前一个分布式缓存操作执行反向操作。这种方法的程序代码臃肿且在多数情况下无法确保多次操作分布式缓存的事务性。
发明内容
本申请的目的在于提出一种用于鉴定用户操作权限的方法和装置,来解决以上背景技术部分提到的技术问题。
第一方面,本申请提供了一种用于鉴定用户操作权限的方法,所述方法包括:响应于用户的操作请求,将权限数据推送到分布式缓存中,其中,所述推送包括对所述分布式缓存进行多次操作;针对对所述分布式缓存进行的每一次操作,创建操作任务;将各个操作任务添加到任务列表中并将所述任务列表保存到关系型数据库中;执行如下任务处理步骤:查找所述关系型数据库中的所述任务列表中任务状态为等待执行或执行失败的操作任务;根据任务状态对所查找到的操作任务进行处理,并将成功处理后的操作任务的任务状态修改为执行成功;确定所述任务列表中是否存在任务状态为等待执行或执行失败的操作任务,如果不存在则从所述分布式缓存读取所述权限数据以确定用户是否具有操作权限;如果存在,则继续执行所述任务处理步骤。
在一些实施例中,所述对所述分布式缓存进行的操作包括以下至少一项:创建数据表、修改数据表、删除数据表、添加数据、修改数据和删除数据。
在一些实施例中,所述操作任务的信息包括:操作方法、任务状态、任务执行次数。
在一些实施例中,所述根据任务状态对所查找到的操作任务进行处理,包括:如果所查找到的操作任务的任务状态为等待执行,则执行所述操作任务;响应于所述操作任务执行成功,将所述操作任务的任务状态设置成执行成功,并将所述操作任务的任务执行次数累加1;响应于所述操作任务执行失败,将所述操作任务的任务状态设置成执行失败,并将所述操作任务的任务执行次数累加1。
在一些实施例中,所述根据任务状态对所查找到的操作任务进行处理,包括:如果所查找到的操作任务的任务状态为执行失败,则确定所查找到的操作任务的任务执行次数是否达到预设阈值;响应于确定出所述操作任务的任务执行次数未达到预设阈值,则执行所述操作任务。
在一些实施例中,所述方法还包括:响应于确定出所述操作任务的任务执行次数达到预设阈值,则发送告警提示信息。
第二方面,本申请提供了一种用于鉴定用户操作权限的装置,所述装置包括:推送单元,配置用于响应于用户的操作请求,将权限数据推送到分布式缓存中,其中,所述推送包括对所述分布式缓存进行多次操作;创建单元,配置用于针对对所述分布式缓存进行的每一次操作,创建操作任务;存储单元,配置用于将各个操作任务添加到任务列表中并将所述任务列表保存到关系型数据库中;处理单元,配置用于执行如下任务处理步骤:查找所述关系型数据库中的所述任务列表中任务状态为等待执行或执行失败的操作任务;根据任务状态对所查找到的操作任务进行处理,并将成功处理后的操作任务的任务状态修改为执行成功;检测单元,配置用于确定所述任务列表中是否存在任务状态为等待执行或执行失败的操作任务,如果不存在则从所述分布式缓存读取所述权限数据以确定用户是否具有操作权限,如果存在,则继续通过处理单元执行所述任务处理步骤。
在一些实施例中,所述对所述分布式缓存进行的操作包括以下至少一项:创建数据表、修改数据表、删除数据表、添加数据、修改数据和删除数据。
在一些实施例中,所述操作任务的信息包括:操作方法、任务状态、任务执行次数。
在一些实施例中,所述处理单元进一步配置用于:如果所查找到的操作任务的任务状态为等待执行,则执行所述操作任务;响应于所述操作任务执行成功,将所述操作任务的任务状态设置成执行成功,并将所述操作任务的任务执行次数累加1;响应于所述操作任务执行失败,将所述操作任务的任务状态设置成执行失败,并将所述操作任务的任务执行次数累加1。
在一些实施例中,所述处理单元进一步配置用于:如果所查找到的操作任务的任务状态为执行失败,则确定所查找到的操作任务的任务执行次数是否达到预设阈值;响应于确定出所述操作任务的任务执行次数未达到预设阈值,则执行所述操作任务。
在一些实施例中,所述装置还包括:告警单元,配置用于响应于确定出所述操作任务的任务执行次数达到预设阈值,则发送告警提示信息。
本申请提供的用于鉴定用户操作权限的方法和装置,通过使用关系型数据库本身支持事务的特性确保对分布式缓存的多次操作的事务性,保证了分布式缓存中的数据的一致性,能够更加简单、高效、准确的鉴定用户操作权限。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1是本申请可以应用于其中的示例性***架构图;
图2是根据本申请的用于鉴定用户操作权限的方法的一个实施例的流程图;
图3是根据本申请的用于鉴定用户操作权限的方法的又一个实施例的流程图;
图4是根据本申请的用于鉴定用户操作权限的装置的一个实施例的结构示意图;
图5是适于用来实现本申请实施例的服务器的计算机***的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1示出了可以应用本申请的用于鉴定用户操作权限的方法或用于鉴定用户操作权限的装置的实施例的示例性***架构100。
如图1所示,***架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103上可以安装有各种需要鉴定用户操作权限的通讯客户端应用,例如购物类应用、即时通信工具、邮箱客户端、社交平台软件等。
终端设备101、102、103可以是具有显示屏并且支持后台鉴权操作的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器105可以是提供各种服务的服务器,例如对通过终端设备101、102、103登录***的用户进行鉴权的后台权限服务器。后台权限服务器可以对接收到的操作请求等数据进行分析等处理,并将处理结果(例如允许用户操作)反馈给终端设备。
需要说明的是,本申请实施例所提供的用于鉴定用户操作权限的方法一般由服务器105执行,相应地,用于鉴定用户操作权限的装置一般设置于服务器105中。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
继续参考图2,示出了根据本申请的用于鉴定用户操作权限的方法的一个实施例的流程200。所述的用于鉴定用户操作权限的方法,包括以下步骤:
步骤201,响应于用户的操作请求,将权限数据推送到分布式缓存中。
在本实施例中,用于鉴定用户操作权限的方法运行于其上的电子设备(例如图1所示的服务器)可以通过有线连接方式或者无线连接方式从运行应用的终端接收用户的操作请求,例如,支付、转账、登录邮箱等需要鉴权的操作。其中,推送包括对该分布式缓存进行多次操作。一次完整的推送需要多次操作都成功完成。
在本实施例的一些可选的实现方式中,对该分布式缓存进行的操作包括以下至少一项:创建数据表、修改数据表、删除数据表、添加数据、修改数据和删除数据。
步骤202,针对对分布式缓存进行的每一次操作,创建操作任务。
在本实施例中,在向分布式缓存推送权限数据过程中,每一次操作分布式缓存时都为此次操作创建与该操作相关联的操作任务。
在本实施例的一些可选的实现方式中,该操作任务的信息包括:操作方法、任务状态、任务执行次数。操作方法可以是创建数据表、修改数据表、删除数据表、添加数据、修改数据和删除数据。任务状态可以是等待执行、执行失败或者执行成功。操作任务还可以包括操作方法标识和操作方法参数用于标识操作的对象。操作任务还可以包括创建时间和最后修改时间,以便监测***异常。
步骤203,将各个操作任务添加到任务列表中并将任务列表保存到关系型数据库中。
在本实施例中,将向分布式缓存推送权限数据过程中创建的每一个任务都添加到任务列表中并将任务列表保存到关系型数据库中。使用关系型数据库本身支持事务的特性确保多次操作分布式缓存的任务都成功添加到关系型数据库事务。事务(Transaction)是并发控制的基本单位。所谓事务,它是一个操作序列,这些操作要么都执行,要么都不执行,它是一个不可分割的工作单位。例如,银行转帐工作:从一个账号扣款并使另一个账号增款,这两个操作要么都执行,要么都不执行。该关系型数据库可以是redis(一个开源,内存存储的数据结构服务器,可用作数据库,高速缓存和消息队列代理)数据库。
步骤204,查找关系型数据库中的任务列表中任务状态为等待执行或执行失败的操作任务。
在本实施例中,基于步骤203查找该关系型数据库中的任务列表中可执行的操作任务,可执行的操作任务有两种,一种是等待执行的操作任务,即从未执行过的操作任务,另一种是执行失败的操作任务,即操作任务曾经执行过但执行失败。执行成功的操作任务不再执行。
步骤205,根据任务状态对所查找到的操作任务进行处理,并将成功处理后的操作任务的任务状态修改为执行成功。
在本实施例中,基于步骤204查找到的可执行的操作任务,根据任务状态分别采用不同的处理步骤,执行完操作任务后如果执行成功则将任务状态修改为执行成功,并将该操作任务的任务执行次数累加1。如果该操作任务执行失败,将该操作任务的任务状态设置成执行失败,并将该操作任务的任务执行次数累加1。
步骤206,判断任务列表中是否存在任务状态为等待执行或执行失败的操作任务。
在本实施例中,将操作任务列表中的操作任务依次执行一次之后,判断操作任务列表中是否存在可执行的操作任务,即任务状态为等待执行或执行失败的操作任务,如果还存在可执行的操作任务则重复执行步骤204和205直到没有可执行的操作任务。如果不存在可执行的操作任务则执行步骤207。
步骤207,从分布式缓存读取权限数据以确定用户是否具有操作权限。
在本实施例中,将权限数据推送到分布式缓存后,从分布式缓存读取权限数据以确定用户是否具有操作权限。例如,用户是否具备增加、删除、修改应用数据的权限等。
本申请的上述实施例提供的方法,通过使用关系型数据库保证对分布式缓存操作的事务性的同时,可以缓解鉴权接口的调用压力,从而支持较大的接口调用量。
进一步参考图3,其示出了用于鉴定用户操作权限的方法的又一个实施例的流程300。该用于鉴定用户操作权限的方法的流程300,包括以下步骤:
步骤301,响应于用户的操作请求,将权限数据推送到分布式缓存中。
步骤302,针对对分布式缓存进行的每一次操作,创建操作任务。
步骤303,将各个操作任务添加到任务列表中并将任务列表保存到关系型数据库中。
步骤304,查找关系型数据库中的任务列表中任务状态为等待执行或执行失败的操作任务。
步骤305,根据任务状态对所查找到的操作任务进行处理,并将成功处理后的操作任务的任务状态修改为执行成功。
步骤301-305与步骤201-205基本相同,因此不再赘述。
步骤306,确定执行失败的操作任务的任务执行次数是否达到预设阈值。
在本实施例中,如果执行失败的操作任务的任务执行次数未达到预设阈值,则继续执行步骤304,如果达到预设阈值,则执行步骤307。例如,预设阈值为5次,一个操作任务执行到第4次时仍没成功,还可以再执行一次,如果执行到第5次仍是失败则执行步骤307。
步骤307,发送告警提示信息。
在本实施例中,基于步骤306,如果执行失败的操作任务的任务执行次数达到预设阈值,则发送告警提示信息。发送方式可以有多种,例如,在操作界面上以提示框的方式提醒,如果是移动终端则还可以震动的方式提醒。
从图3中可以看出,与图2对应的实施例相比,本实施例中的用于鉴定用户操作权限的方法的流程300突出对执行失败的操作任务的处理步骤,不仅可以提高推送权限数据的成功率,还兼顾效率,设置了执行次数的上限以避免无限制的重复执行任务。
进一步参考图4,作为对上述各图所示方法的实现,本申请提供了一种用于鉴定用户操作权限的装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图4所示,本实施例所述的用于鉴定用户操作权限的装置400包括:推送单元401、创建单元402、存储单元403、处理单元404和检测单元405。其中,推送单元401配置用于响应于用户的操作请求,将权限数据推送到分布式缓存中,其中,所述推送包括对所述分布式缓存进行多次操作;创建单元402配置用于针对对所述分布式缓存进行的每一次操作,创建操作任务;存储单元403配置用于将各个操作任务添加到任务列表中并将所述任务列表保存到关系型数据库中;处理单元404配置用于执行如下任务处理步骤:查找所述关系型数据库中的所述任务列表中任务状态为等待执行或执行失败的操作任务;根据任务状态对所查找到的操作任务进行处理,并将成功处理后的操作任务的任务状态修改为执行成功;检测单元405配置用于确定所述任务列表中是否存在任务状态为等待执行或执行失败的操作任务,如果不存在则从所述分布式缓存读取所述权限数据以确定用户是否具有操作权限,如果存在,则继续通过处理单元执行所述任务处理步骤。
在本实施例中,存储单元403存储了创建单元402创建的操作任务,处理单元404用于执行存储在存储单元403的任务,检测单元405根据处理单元404的执行结果确定用户是否具有操作权限或者继续由处理单元404处理未执行成功的任务。
在本实施例的一些可选的实现方式中,所述对所述分布式缓存进行的操作包括以下至少一项:创建数据表、修改数据表、删除数据表、添加数据、修改数据和删除数据。
在本实施例的一些可选的实现方式中,所述操作任务的信息包括:操作方法、任务状态、任务执行次数。
在本实施例的一些可选的实现方式中,处理单元404进一步配置用于:如果所查找到的操作任务的任务状态为等待执行,则执行所述操作任务;响应于所述操作任务执行成功,将所述操作任务的任务状态设置成执行成功,并将所述操作任务的任务执行次数累加1;响应于所述操作任务执行失败,将所述操作任务的任务状态设置成执行失败,并将所述操作任务的任务执行次数累加1。
在本实施例的一些可选的实现方式中,处理单元404进一步配置用于:如果所查找到的操作任务的任务状态为执行失败,则确定所查找到的操作任务的任务执行次数是否达到预设阈值;响应于确定出所述操作任务的任务执行次数未达到预设阈值,则执行所述操作任务;响应于所述操作任务执行成功,将所述操作任务的任务状态设置成执行成功,并将所述操作任务的任务执行次数累加1;响应于所述操作任务执行失败,将所述操作任务的任务状态设置成执行失败,并将所述操作任务的任务执行次数累加1。
在本实施例的一些可选的实现方式中,装置400还包括:告警单元(未示出),配置用于响应于确定出所述操作任务的任务执行次数达到预设阈值,则发送告警提示信息。
下面参考图5,其示出了适于用来实现本申请实施例的服务器的计算机***500的结构示意图。
如图5所示,计算机***500包括中央处理单元(CPU)501,其可以根据存储在只读存储器(ROM)502中的程序或者从存储部分508加载到随机访问存储器(RAM)503中的程序而执行各种适当的动作和处理。在RAM 503中,还存储有***500操作所需的各种程序和数据。CPU 501、ROM 502以及RAM 503通过总线504彼此相连。输入/输出(I/O)接口505也连接至总线504。
以下部件连接至I/O接口505:包括键盘、鼠标等的输入部分506;包括诸如液晶显示器(LCD)等以及扬声器等的输出部分507;包括硬盘等的存储部分508;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分509。通信部分509经由诸如因特网的网络执行通信处理。驱动器510也根据需要连接至I/O接口505。可拆卸介质511,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器510上,以便于从其上读出的计算机程序根据需要被安装入存储部分508。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,所述计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分509从网络上被下载和安装,和/或从可拆卸介质511被安装。在该计算机程序被中央处理单元(CPU)501执行时,执行本申请的方法中限定的上述功能。
附图中的流程图和框图,图示了按照本申请各种实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括推送单元、创建单元、存储单元、处理单元和检测单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,推送单元还可以被描述为“响应于用户的操作请求,将权限数据推送到分布式缓存中的单元”。
作为另一方面,本申请还提供了一种非易失性计算机存储介质,该非易失性计算机存储介质可以是上述实施例中所述装置中所包含的非易失性计算机存储介质;也可以是单独存在,未装配入终端中的非易失性计算机存储介质。上述非易失性计算机存储介质存储有一个或者多个程序,当所述一个或者多个程序被一个设备执行时,使得所述设备:响应于用户的操作请求,将权限数据推送到分布式缓存中,其中,所述推送包括对所述分布式缓存进行多次操作;针对对所述分布式缓存进行的每一次操作,创建操作任务;将各个操作任务添加到任务列表中并将所述任务列表保存到关系型数据库中;执行如下任务处理步骤:查找所述关系型数据库中的所述任务列表中任务状态为等待执行或执行失败的操作任务;根据任务状态对所查找到的操作任务进行处理,并将成功处理后的操作任务的任务状态修改为执行成功;确定所述任务列表中是否存在任务状态为等待执行或执行失败的操作任务,如果不存在则从所述分布式缓存读取所述权限数据以确定用户是否具有操作权限;如果存在,则继续执行所述任务处理步骤。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离所述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

Claims (14)

1.一种用于鉴定用户操作权限的方法,其特征在于,所述方法包括:
响应于用户的操作请求,将权限数据推送到分布式缓存中,其中,所述推送包括对所述分布式缓存进行多次操作;
针对对所述分布式缓存进行的每一次操作,创建操作任务;
将各个操作任务添加到任务列表中并将所述任务列表保存到关系型数据库中;
执行如下任务处理步骤:查找所述关系型数据库中的所述任务列表中任务状态为等待执行或执行失败的操作任务;根据任务状态对所查找到的操作任务进行处理,并将成功处理后的操作任务的任务状态修改为执行成功;确定所述任务列表中是否存在任务状态为等待执行或执行失败的操作任务,如果不存在则从所述分布式缓存读取所述权限数据以确定用户是否具有操作权限;
如果存在,则继续执行所述任务处理步骤。
2.根据权利要求1所述的用于鉴定用户操作权限的方法,其特征在于,所述对所述分布式缓存进行的操作包括以下至少一项:
创建数据表、修改数据表、删除数据表、添加数据、修改数据和删除数据。
3.根据权利要求1所述的用于鉴定用户操作权限的方法,其特征在于,所述操作任务的信息包括:操作方法和任务状态和任务执行次数。
4.根据权利要求3所述的用于鉴定用户操作权限的方法,其特征在于,所述根据任务状态对所查找到的操作任务进行处理,包括:
如果所查找到的操作任务的任务状态为等待执行,则执行所述操作任务;
响应于所述操作任务执行成功,将所述操作任务的任务状态设置成执行成功,并将所述操作任务的任务执行次数累加1;
响应于所述操作任务执行失败,将所述操作任务的任务状态设置成执行失败,并将所述操作任务的任务执行次数累加1。
5.根据权利要求3所述的用于鉴定用户操作权限的方法,其特征在于,所述根据任务状态对所查找到的操作任务进行处理,包括:
如果所查找到的操作任务的任务状态为执行失败,则确定所查找到的操作任务的任务执行次数是否达到预设阈值;
响应于确定出所述操作任务的任务执行次数未达到预设阈值,则执行所述操作任务。
6.根据权利要求5所述的用于鉴定用户操作权限的方法,其特征在于,所述方法还包括:
响应于确定出所述操作任务的任务执行次数达到预设阈值,则发送告警提示信息。
7.一种用于鉴定用户操作权限的装置,其特征在于,所述装置包括:
推送单元,配置用于响应于用户的操作请求,将权限数据推送到分布式缓存中,其中,所述推送包括对所述分布式缓存进行多次操作;
创建单元,配置用于针对对所述分布式缓存进行的每一次操作,创建操作任务;
存储单元,配置用于将各个操作任务添加到任务列表中并将所述任务列表保存到关系型数据库中;
处理单元,配置用于执行如下任务处理步骤:查找所述关系型数据库中的所述任务列表中任务状态为等待执行或执行失败的操作任务;根据任务状态对所查找到的操作任务进行处理,并将成功处理后的操作任务的任务状态修改为执行成功;
检测单元,配置用于确定所述任务列表中是否存在任务状态为等待执行或执行失败的操作任务,如果不存在则从所述分布式缓存读取所述权限数据以确定用户是否具有操作权限,如果存在,则继续通过处理单元执行所述任务处理步骤。
8.根据权利要求7所述的用于鉴定用户操作权限的装置,其特征在于,所述对所述分布式缓存进行的操作包括以下至少一项:
创建数据表、修改数据表、删除数据表、添加数据、修改数据和删除数据。
9.根据权利要求7所述的用于鉴定用户操作权限的装置,其特征在于,所述操作任务的信息包括:操作方法和任务状态和任务执行次数。
10.根据权利要求9所述的用于鉴定用户操作权限的装置,其特征在于,所述处理单元进一步配置用于:
如果所查找到的操作任务的任务状态为等待执行,则执行所述操作任务;
响应于所述操作任务执行成功,将所述操作任务的任务状态设置成执行成功,并将所述操作任务的任务执行次数累加1;
响应于所述操作任务执行失败,将所述操作任务的任务状态设置成执行失败,并将所述操作任务的任务执行次数累加1。
11.根据权利要求9所述的用于鉴定用户操作权限的装置,其特征在于,所述处理单元进一步配置用于:
如果所查找到的操作任务的任务状态为执行失败,则确定所查找到的操作任务的任务执行次数是否达到预设阈值;
响应于确定出所述操作任务的任务执行次数未达到预设阈值,则执行所述操作任务。
12.根据权利要求11所述的用于鉴定用户操作权限的装置,其特征在于,所述装置还包括:
告警单元,配置用于响应于确定出所述操作任务的任务执行次数达到预设阈值,则发送告警提示信息。
13.一种用于鉴定用户操作权限的设备,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-6中任一所述的方法。
14.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-6中任一所述的方法。
CN201610597712.5A 2016-07-26 2016-07-26 用于鉴定用户操作权限的方法和装置 Active CN107657155B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610597712.5A CN107657155B (zh) 2016-07-26 2016-07-26 用于鉴定用户操作权限的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610597712.5A CN107657155B (zh) 2016-07-26 2016-07-26 用于鉴定用户操作权限的方法和装置

Publications (2)

Publication Number Publication Date
CN107657155A CN107657155A (zh) 2018-02-02
CN107657155B true CN107657155B (zh) 2020-03-27

Family

ID=61126647

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610597712.5A Active CN107657155B (zh) 2016-07-26 2016-07-26 用于鉴定用户操作权限的方法和装置

Country Status (1)

Country Link
CN (1) CN107657155B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108984290B (zh) * 2018-08-02 2021-03-30 北京京东金融科技控股有限公司 任务调度方法和***
CN110472932A (zh) * 2019-07-26 2019-11-19 中广核工程有限公司 一种支持可配置的任务跟踪管理方法及***
CN111092892A (zh) * 2019-12-20 2020-05-01 上海众源网络有限公司 一种鉴权方法、装置、服务器及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102571380A (zh) * 2010-12-16 2012-07-11 北京博阳世通信息技术有限公司 多实例gis平台统一用户管理方法和***
CN103490886A (zh) * 2012-06-12 2014-01-01 阿里巴巴集团控股有限公司 权限数据的验证方法、装置及***
CN103747073A (zh) * 2013-12-30 2014-04-23 乐视网信息技术(北京)股份有限公司 一种分布式缓存的方法和***
CN105069113A (zh) * 2015-08-11 2015-11-18 北京京东尚科信息技术有限公司 一种数据流量实时可视化的方法及***
CN105100200A (zh) * 2015-06-02 2015-11-25 北京京东尚科信息技术有限公司 分布式部署统一配置和自动适配方法和***

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102571380A (zh) * 2010-12-16 2012-07-11 北京博阳世通信息技术有限公司 多实例gis平台统一用户管理方法和***
CN103490886A (zh) * 2012-06-12 2014-01-01 阿里巴巴集团控股有限公司 权限数据的验证方法、装置及***
CN103747073A (zh) * 2013-12-30 2014-04-23 乐视网信息技术(北京)股份有限公司 一种分布式缓存的方法和***
CN105100200A (zh) * 2015-06-02 2015-11-25 北京京东尚科信息技术有限公司 分布式部署统一配置和自动适配方法和***
CN105069113A (zh) * 2015-08-11 2015-11-18 北京京东尚科信息技术有限公司 一种数据流量实时可视化的方法及***

Also Published As

Publication number Publication date
CN107657155A (zh) 2018-02-02

Similar Documents

Publication Publication Date Title
US20200151017A1 (en) Event-driven blockchain workflow processing
US10380103B2 (en) Object data updating method and apparatus in an object storage system
CN109522751B (zh) 访问权限控制方法、装置、电子设备及计算机可读介质
CN111865970B (zh) 用于实现接口幂等性的方法和装置
CN110473036B (zh) 一种生成订单号的方法和装置
CN112380227B (zh) 基于消息队列的数据同步方法、装置、设备及存储介质
CN111144926B (zh) 业务请求处理方法、装置、***、电子设备及可读介质
CN111126948A (zh) 用于审批流程的处理方法和装置
CN107657155B (zh) 用于鉴定用户操作权限的方法和装置
CN111831461A (zh) 一种处理业务流程的方法和装置
US11637814B2 (en) Deploying and utilizing a dynamic data stenciling system with a smart linking engine
CN114637611A (zh) 基于消息队列的信息处理方法、装置及计算机设备
CN113132400B (zh) 业务处理方法、装置、计算机***及存储介质
CN114020689A (zh) 数据处理方法、数据处理装置、电子设备及存储介质
US10129328B2 (en) Centralized management of webservice resources in an enterprise
CN113051055A (zh) 一种任务处理方法和装置
US9059992B2 (en) Distributed mobile enterprise application platform
CN115330396A (zh) 支付状态获取方法、装置、计算机设备及存储介质
CN113722007B (zh) Vpn分支设备的配置方法、装置及***
CN116503005A (zh) 流程动态修改方法、装置、***及存储介质
CN113781154A (zh) 一种信息回滚方法、***、电子设备及存储介质
CN113448960A (zh) 一种导入表格文件的方法和装置
CN116167835A (zh) 业务处理方法、装置、电子设备和计算机可读介质
CN114218191A (zh) ***功能迁移方法、装置、计算机设备及存储介质
CN115686793A (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