一种基于微服务架构的鉴权方法、装置、设备和介质与流程

文档序号:24689010发布日期:2021-04-16 09:59阅读:89来源:国知局
一种基于微服务架构的鉴权方法、装置、设备和介质与流程

1.本发明涉及计算机技术领域,特别涉及一种基于微服务架构的鉴权方法、装置、设备和介质。


背景技术:

2.随着在线教育视频行业的飞速发展,支撑在线多屏教育视频业务的系统越来越多,用户可以一个账号体验不同厂商开发的不同系统功能,这对系统的鉴权服务来说是一个不小的考验。具体来说,主要是针对播放鉴权、订购鉴权、订购记录查询鉴权、消费记录查询鉴权,对用户身份进行校验。现有技术对在线多屏教育视频业务的鉴权方法存在一些不足,主要表现为两个方面:
3.一方面鉴权服务分别在各个后台微服务的模块中,在微服务架构中,如果需要增加其他业务的微服务模块,也需要相应配置鉴权服务,对业务的扩展有一定的阻力,而且微服务为了接入鉴权模块而无法专注自身的业务模块,导致后台资源损耗在鉴权模块较多,拖累业务模块的处理;
4.另一方面由于鉴权服务在后台微服务中,这使得所有服务都需要网关进行转发,对网关的性能有较大的消耗,如果请求量过大,容易达到网关的性能瓶颈。


技术实现要素:

5.本发明要解决的技术问题,在于提供一种基于微服务架构的鉴权方法、装置、设备和介质,实现了微服务系统扩展只需要专注业务模块的管理,解放了网关的压力。
6.第一方面,本发明提供了一种基于微服务架构的鉴权方法,包括:中台以及后台微服务,所述中台设置网关以及鉴权服务;具体包括如下步骤:
7.步骤1、接收请求数据,若请求数据包括鉴权数据,则进入步骤3;否,则进入步骤2;
8.步骤2、网关将请求数据进行转发,访问后台微服务,进行请求数据处理,结束步骤;
9.步骤3、鉴权服务对所述请求数据进行鉴权;若鉴权成功,则访问后台微服务,完成业务处理;若鉴权失败,则进行对应处理。
10.进一步地,所述步骤3进一步具体为:
11.根据请求数据中判断是否为首次鉴权:
12.若为首次鉴权,则鉴权服务对请求数据进行鉴权,鉴权成功后,访问后台微服务,完成业务处理,并在鉴权服务中存储鉴权数据;若鉴权失败,则进行对应处理;
13.若为非首次鉴权,则校验请求数据中的鉴权数据,校验通过,则为鉴权成功,访问后台微服务,完成业务处理,并更新鉴权服务中的鉴权数据;若校验不通过,则对请求数据进行鉴权,鉴权成功后,访问后台微服务,完成业务处理,并在鉴权服务中存储鉴权数据;若鉴权失败,则进行对应处理。
14.进一步地,所述步骤3中若鉴权失败,则进行对应处理进一步具体为:若鉴权失败,
则判定为游客,所述鉴权服务为用户提供产品推荐服务。
15.第二方面,本发明提供了一种基于微服务架构的鉴权装置,包括:中台以及后台微服务,所述中台设置网关以及鉴权服务;具体包括如下模块:
16.接收模块,接收请求数据,若请求数据包括鉴权数据,则进入鉴权模块;否,则进入转发模块;
17.转发模块,网关将请求数据进行转发,访问后台微服务,进行请求数据处理,结束;
18.鉴权模块,鉴权服务对所述请求数据进行鉴权;若鉴权成功,则访问后台微服务,完成业务处理;若鉴权失败,则进行对应处理。
19.进一步地,所述鉴权模块进一步具体为:
20.根据请求数据中判断是否为首次鉴权:
21.若为首次鉴权,则鉴权服务对请求数据进行鉴权,鉴权成功后,访问后台微服务,完成业务处理,并在鉴权服务中存储鉴权数据;若鉴权失败,则进行对应处理;
22.若为非首次鉴权,则校验请求数据中的鉴权数据,校验通过,则为鉴权成功,访问后台微服务,完成业务处理,并更新鉴权服务中的鉴权数据;若校验不通过,则对请求数据进行鉴权,鉴权成功后,访问后台微服务,完成业务处理,并在鉴权服务中存储鉴权数据;若鉴权失败,则进行对应处理。
23.进一步地,所述鉴权模块中若鉴权失败,则进行对应处理进一步具体为:若鉴权失败,则判定为游客,所述鉴权服务为用户提供产品推荐服务。
24.第三方面,本发明提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现第一方面所述的方法。
25.第四方面,本发明提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现第一方面所述的方法。
26.本发明实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:
27.本申请实施例提供的一种基于微服务架构的鉴权方法、装置、设备和介质,解决了现有技术中微服务系统扩展需要接入鉴权模块问题和所有请求都需要网关转发的不足,实现了微服务系统扩展只需要专注业务模块的管理,解放了网关的压力。
28.上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
29.下面参照附图结合实施例对本发明作进一步的说明。
30.图1为本发明的鉴权前置的结构示意图:
31.图2为本发明一种具体实施示意图;
32.图3所示为本发明鉴权方法的流程图;
33.图4所示为本发明的鉴权服务模块的结构框图;
34.图5为本发明实施例一中方法中的流程图;
35.图6为本发明实施例二中装置的结构示意图。
具体实施方式
36.本申请实施例通过提供一种基于微服务架构的鉴权方法、装置、设备和介质,针对现有鉴权方法导致后台微服务业务扩展并且专注业务模块、网关层转发压力大的缺陷,通过把鉴权模块前置部署至中台网关区,与网关并行从而减轻网关压力,请求指向由前台决定,后台微服务可专注于业务模块而不需要关心鉴权问题。
37.本申请实施例中的技术方案,总体思路如下:
38.1、本发明的技术方案为把鉴权服务前置到中台,前台(现有技术)请求的指向由前台完成,后台(现有技术)可专注于业务模块而不需要关心鉴权问题。鉴权模块配置缓存集群,对鉴权数据进行存储,鉴权成功,为用户配置加密后的身份口令,鉴权失败则转发至内容产品推荐服务。
39.上述鉴权服务包括:播放鉴权、订购鉴权、订购记录查询鉴权、消费记录查询鉴权。
40.上述鉴权数据包括:用户身份信息、用户订购记录信息、用户消费记录信息。
41.如图1所示,所述的鉴权服务独立部署在中台区,与网关模块并行,前台的请求是否需要鉴权由前台子系统决定。所述鉴权服务包含鉴权数据缓存单元,用于存储鉴权数据。
42.如图2所示,系统包括前台多种展示渠道、中台网关和鉴权服务(图中虚线阴影部分)、后台微服务模块三个部分。
43.在本实例中,各个前台渠道发起的请求是否需要鉴权由各个前台渠道的具体业务决定,需要鉴权的请求指向鉴权服务,鉴权服务对用户信息进行校验,通过校验的请求颁发加密过的用户口令并缓存用户的鉴权成功信息后指向对应的微服务,而校验不通过的请求转发至内容/产品推荐服务。
44.如图3所示,用于在线多屏教育业务的鉴权方法的步骤包括:
45.步骤301:所述前台发起请求;所述请求包括需要鉴权的请求或不需要鉴权的请求;
46.步骤302:根据所述前台发起的请求类型判断所述请求是否为鉴权类型请求,如果不是,则执行303,如果是,则执行304;
47.步骤303:所述网关对所述非鉴权类型请求进行转发等操作;
48.步骤304:对所述鉴权类型请求查询鉴权缓存数据,以判断是否为首次鉴权;
49.步骤305:根据所述请求是否存在已鉴权记录判断是否为首次鉴权,如果不是,则执行306,如果是,则执行308;
50.步骤306:所述鉴权服务校验鉴权数据合法性;
51.步骤307:判断校验数据是否合法,所述合法性包括鉴权数据是否在有效期内、鉴权数据是否为数据库内合法用户等,检验结果如果合法,则执行312,如果不合法,则执行308;
52.步骤308:所述鉴权服务对用户进行鉴权操作,所述鉴权操作包括校验用户身份、颁发鉴权成功后的已加密的身份口令等;
53.步骤309:根据所述鉴权服务对用户鉴权操作的结果,判断是否鉴权成功,如果是,则执行311,如果不是,则执行310;
54.步骤310:经所述鉴权服务鉴权失败的用户,判定为游客,所述鉴权服务为用户提供产品推荐服务;
55.步骤311:所述鉴权服务成功后,所述鉴权数据缓存单元记录或者更新缓存数据;
56.步骤312:所述鉴权类型请求允许访问所述后台微服务模块,完成业务处理请求;
57.步骤313:流程结束。
58.如图4所示,鉴权数据缓存单元用于存储鉴权成功后的用户数据和相关鉴权接口数据记录。
59.推荐服务用于用户鉴权失败后为用户推荐相关产品/内容。
60.鉴权服务部署在中台,与网关并行,前置后的鉴权服务从微服务系统剥离,不仅解放网关压力,也让微服务系统能专注于业务,同时微服务系统扩张也不需要考虑鉴权服务单元。
61.实施例一
62.如图5所示,本实施例提供一种基于微服务架构的鉴权方法,包括:中台以及后台微服务,所述中台设置网关以及鉴权服务;具体包括如下步骤:
63.步骤1、接收请求数据,若请求数据包括鉴权数据,则进入步骤3;否,则进入步骤2;
64.步骤2、网关将请求数据进行转发,访问后台微服务,进行请求数据处理,结束步骤;
65.步骤3、根据请求数据中判断是否为首次鉴权:
66.若为首次鉴权,则鉴权服务对请求数据进行鉴权,鉴权成功后,访问后台微服务,完成业务处理,并在鉴权服务中存储鉴权数据;若鉴权失败,则判定为游客,所述鉴权服务为用户提供产品推荐服务;
67.若为非首次鉴权,则校验请求数据中的鉴权数据,校验通过,则为鉴权成功,访问后台微服务,完成业务处理,并更新鉴权服务中的鉴权数据;若校验不通过,则对请求数据进行鉴权,鉴权成功后,访问后台微服务,完成业务处理,并在鉴权服务中存储鉴权数据;若鉴权失败,则判定为游客,所述鉴权服务为用户提供产品推荐服务。
68.基于同一发明构思,本申请还提供了与实施例一中的方法对应的装置,详见实施例二。
69.实施例二
70.如图6所示,在本实施例中提供了一种基于微服务架构的鉴权装置,包括:中台以及后台微服务,所述中台设置网关以及鉴权服务;具体包括如下模块:
71.接收模块,接收请求数据,若请求数据包括鉴权数据,则进入鉴权模块;否,则进入转发模块;
72.转发模块,网关将请求数据进行转发,访问后台微服务,进行请求数据处理,结束;
73.鉴权模块,根据请求数据中判断是否为首次鉴权:
74.若为首次鉴权,则鉴权服务对请求数据进行鉴权,鉴权成功后,访问后台微服务,完成业务处理,并在鉴权服务中存储鉴权数据;若鉴权失败,则判定为游客,所述鉴权服务为用户提供产品推荐服务;
75.若为非首次鉴权,则校验请求数据中的鉴权数据,校验通过,则为鉴权成功,访问后台微服务,完成业务处理,并更新鉴权服务中的鉴权数据;若校验不通过,则对请求数据进行鉴权,鉴权成功后,访问后台微服务,完成业务处理,并在鉴权服务中存储鉴权数据;若鉴权失败,则判定为游客,所述鉴权服务为用户提供产品推荐服务。
76.由于本发明实施例二所介绍的装置,为实施本发明实施例一的方法所采用的装置,故而基于本发明实施例一所介绍的方法,本领域所属人员能够了解该装置的具体结构及变形,故而在此不再赘述。凡是本发明实施例一的方法所采用的装置都属于本发明所欲保护的范围。
77.基于同一发明构思,本申请提供了实施例一对应的电子设备实施例,详见实施例三。
78.实施例三
79.本实施例提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时,可以实现实施例一中任一实施方式。
80.由于本实施例所介绍的电子设备为实施本申请实施例一中方法所采用的设备,故而基于本申请实施例一中所介绍的方法,本领域所属技术人员能够了解本实施例的电子设备的具体实施方式以及其各种变化形式,所以在此对于该电子设备如何实现本申请实施例中的方法不再详细介绍。只要本领域所属技术人员实施本申请实施例中的方法所采用的设备,都属于本申请所欲保护的范围。
81.基于同一发明构思,本申请提供了实施例一对应的存储介质,详见实施例四。
82.实施例四
83.本实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时,可以实现实施例一中任一实施方式。
84.本申请实施例中提供的技术方案,至少具有如下技术效果或优点:本申请实施例提供的方法、装置、设备及介质,
85.1、解决了现有技术中微服务系统扩展必须配置鉴权服务的不足。
86.2、鉴权服务与网关系统并行部署,解决了所有请求都需要网关转发带来的网关性能压力。
87.本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd

rom、光学存储器等)上实施的计算机程序产品的形式。
88.本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
89.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
90.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计
算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
91.虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1