本发明涉及微服务技术,尤其涉及一种微服务授权方法、设备及存储介质。
背景技术:
微服务是指将单一的软件产品分成多个单独的服务,通过这些服务的协同工作,为用户提供相应的服务,从而实现软件产品的功能。微服务平台是以多服务、多节点的形式部署的,业务使用端能够在私有化后的微服务平台实施各种微服务。
常用的对微服务进行授权的方法有两种:一种是授权验证端将微服务平台作为整体进行授权,使得在微服务平台上部署实施的所有微服务都得到授权,进而完成对各个微服务的授权;另一种是授权验证端在为每个物理节点单独授权,使得在每个物理节点上实施的微服务都能得到授权,进而完成对各个微服务的授权。
然而,将微服务平台作为整体授权,在扩展服务时授权验证端需要对所有的微服务节点更新授权文件,即对微服务重新进行授权,使得微服务授权的可扩展度、易部署度较低;而授权验证端为每个物理节点单独授权时,业务使用端所加入的每个物理设备都要由授权验证端单独授权,微服务授权的易部署度较低,并且在服务扩展时,业务使用端需要提前准备好已经授权的物理节点,使得微服务授权的可扩展度较低。
技术实现要素:
本发明实施例提供一种微服务授权方法、设备及存储介质,能够提高微服务授权的可扩展度和易部署度。
本发明实施例的技术方案是这样实现的:
本发明实施例提供一种微服务授权方法,包括:
获取微服务主控平台的设备标识信息和微服务标识信息,并根据所述设备标识信息和所述微服务标识信息,生成主控服务信息;
将所述主控服务信息发送给微服务授权验证平台,以使得所述微服务授权验证平台根据所述主控服务信息生成授权文件;
接收所述微服务授权验证平台返回的授权文件,以利用所述授权文件对各个微服务进行授权;
接收至少一个业务节点发送的至少一个业务需求;其中,所述至少一个业务需求信息中携带有与其一一对应的所述至少一个业务节点待授权的微服务;
对比所述至少一个业务需求信息是否超出所述授权文件的范围,以分别针对所述至少一个业务需求信息进行授权处理,返回至少一个业务节点各自对应的业务节点授权信息,完成针对所述各个微服务的授权。
本发明实施例提供一种微服务授权方法,包括:
接收微服务主控平台发送的主控服务信息;所述主控服务信息表征待授权的所述微服务主控平台对应的身份相关信息;
根据所述主控服务信息,从预设约定信息中提取出微服务部署信息;所述微服务部署信息为约定的微服务相关信息;
利用所述微服务部署信息生成授权文件;所述授权文件用于对各个微服务进行授权;
将所述授权文件发送给所述微服务主控平台,以使所述微服务主控平台通过对比接收到的至少一个业务需求信息是否超出所述授权文件的范围,以完成针对各个微服务的授权。
本发明实施例提供一种微服务授权方法,包括:
当接收到微服务请求时,根据所述微服务请求生成业务需求信息;
将业务需求信息发送给微服务主控平台;
接收所述微服务主控平台返回的业务节点授权信息;所述业务节点授权信息是所述微服务主控平台基于所述业务需求信息确定出的;
基于所述业务节点授权信息,实现微服务。
本发明实施例提供一种微服务主控平台,包括:
第一存储器,用于存储可执行微服务授权指令;
第一处理器,用于执行所述第一存储器中存储的可执行微服务授权指令时,实现本发明实施例微服务主控平台侧提供的微服务授权方法。
本发明实施例提供一种微服务授权验证平台,包括:
第二存储器,用于存储可执行微服务授权指令;
第二处理器,用于执行所述第二存储器中存储的可执行微服务授权指令时,实现本发明实施例微服务授权验证平台侧提供的微服务授权方法。
本发明实施例提供一种业务节点,包括:
第三存储器,用于存储可执行微服务授权指令;
第三处理器,用于执行所述第三存储器中存储的可执行微服务授权指令时,实现本发明实施例业务节点侧提供的微服务授权方法。
本发明实施例提供一种存储介质,存储有可执行微服务授权指令,用于引起第一处理器执行时,实现本发明实施例微服务主控平台侧提供的微服务授权方法,或者用于引起第二处理器执行时,实现本发明实施例微服务授权验证平台侧提供的微服务授权方法,或者用于引起第三处理器执行时,实现本发明实施例业务节点侧提供的微服务授权方法。
本发明实施例具有以下有益效果:
本发明实施例中,微服务主控平台获取自身的设备标识信息和微服务标识信息,进而根据设备标识信息和微服务标识信息生成主控服务信息,通过将主控服务信息发送给微服务授权验证平台,以及接收微服务授权验证平台返回的授权文件的方式,获得微服务授权验证平台对微服务主控平台的授权,然后在接收到至少一个业务节点发送的至少一个业务需求信息之后,对比至少一个业务需求信息是否超出了微服务授权验证平台所生成授权文件的范围,以为至少一个业务节点返回各自对应的业务节点授权信息,完成针对各个微服务的授权。如此,主控服务设备能够先从微服务授权验证平台获得授权,再根据所获得的授权文件对业务节点所有进行的微服务进行授权管理,提高了微服务平台的易部署度和可扩展度。
附图说明
图1是本发明实施例提供的微服务授权系统100的一个可选的架构示意图;
图2是本发明实施例提供的微服务主控平台200的一个可选的结构示意图;
图3是本发明实施例提供的微服务授权验证平台400的一个可选的结构示意图;
图4是本发明实施例提供的业务节点500的一个可选的结构示意图;
图5是本发明实施例提供的微服务授权方法的一个可选的流程示意图一;
图6是本发明实施例提供的微服务授权过程的示意图一;
图7是本发明实施例提供的微服务授权过程的示意图二;
图8是本发明实施例提供的配置资源数据的示意图;
图9是本发明实施例提供的微服务授权方法的一个可选的流程示意图二;
图10是本发明实施例提供的对中间授权文件进行加密的示意图;
图11是本发明实施例提供的业务使用端将授权文件加载给微服务主控平台的示意图;
图12是本发明实施例提供的实际应用场景中的微服务授权过程示意图;
图13为本发明实施例提供的部署授权流程的示意图;
图14是本发明实施例提供的授权检验流程的示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,所描述的实施例不应视为对本发明的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
在以下的描述中,所涉及的术语“第一\第二\第三”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本发明实施例能够以除了在这里图示或描述的以外的顺序实施。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本发明实施例的目的,不是旨在限制本发明。
对本发明实施例进行进一步详细说明之前,对本发明实施例中涉及的名词和术语进行说明,本发明实施例中涉及的名词和术语适用于如下的解释。
1)微服务,是指将单一服务程序拆分成一组小型的独立服务,这些服务之间互相协调、互相配合,以完成服务程序提供的功能。例如,将社交类应用分为数据获取服务、安全验证服务等,通过各个服务之间的协同运作,为用户提供社交服务。
2)微服务平台,用于支撑微服务应用的开发、测试,以及运行期的数据处理和应用的管理监控的软件平台。微服务平台可以搭建在多个设备上。
3)私有化,是指将微服务平台打包至业务使用端,以便业务使用端利用微服务平台部署微服务。
4)授权文件,用于在微服务平台私有化之后,为微服务平台所实施的各个微服务进行授权的文件,只有当微服务经过授权后才能使用。
5)微服务授权验证平台,是指生成授权文件,即为微服务平台的主控制节点进行授权的平台。微服务授权验证平台一般部署在微服务平台提供端,为多个业务使用端提供微服务平台的授权服务。
6)微服务主控平台,表征业务使用端所私有化的微服务平台的主控制节点,用于对业务使用端所要实现各个微服务,以及实施各个微服务的业务节点进行授权管理。微服务主控平台可以用来对微服务和业务节点进行授权、监控以及信息同步等。
7)业务节点,是指用来实施微服务的设备。微服务可以实施在一个业务节点上,也可以部署在多个业务节点上。
微服务是指将单一的软件产品分成多个单独的服务,通过这些服务的协同工作,为用户提供相应的服务,从而实现软件产品的功能。微服务平台是以多服务、多节点的形式部署的,使得微服务能够在微服务平台上实施。
相关技术中,微服务平台的授权主要通过两种形式来实现:一种是授权验证端将微服务平台的总体结构为授权对象,整体上控制微服务平台上的各个微服务的可用性,进而完成对业务使用端所要部署的各个微服务的授权;另一种是授权验证端为微服务平台的每个物理节点单独授权,使得在每个物理节点上实施的微服务都能得到授权,进而完成对业务使用端所要部署的各个微服务的授权。
当以微服务平台作为整体授权时,是以粗粒度的控制整个微服务平台,使得在微服务平台上的微服务在整体上可用,或是在整体上失效。这样虽然实现了微服务授权,但是在业务使用端需要扩展服务时,授权验证端需要对所有的微服务节点都更新授权文件,即对所有的微服务重新授权,使得微服务平台的可扩展度、易部署度较低。并且,由于是对微服务平台整体授权,授权文件没有和设备绑定,无法限制授权文件的拷贝,存在安全问题。
当为微服务平台的每个物理节点单独授权时,授权文件与物理节点,即与设备做了绑定,虽然解决了安全问题,但是,当有新的设备加入微服务平台时,需要授权验证端为新设备单独授权,即业务使用端所加入的每个物理设备都需要重新授权,使得微服务授权的易部署度较低;并且,若是业务使用端需要进行服务扩展时,需要事先准备好已经授权的硬件设备,才能顺利完成服务扩展,由此可见,这种方式使得微服务授权的可扩展度较低。
本发明实施例提供一种微服务授权方法、设备和存储介质,能够提高微服务的可扩展度和易部署度,下面说明本发明实施例提供的微服务授权设备的示例性应用,本发明实施例提供的微服务授权设备可以实施为微服务授权验证平台、微服务主控平台和业务节点中的任意一个。下面,将说明微服务授权设备分别实施为微服务主控平台、微服务授权验证平台和业务节点时的示例性应用。
参见图1,图1是本发明实施例提供的微服务授权系统100的一个可选的架构示意图,为实现支撑一个微服务授权应用,微服务主控平台200通过网络300连接微服务授权验证平台400,业务节点500(示例性示出了业务节点500-1、业务节点500-2和业务节点500-3)通过网络300连接微服务主控平台200,网络300可以是广域网或者局域网,又或者是二者的组合。
在微服务授权过程中,微服务主控平台200先要获取微服务主控平台200的设备标识信息和微服务标识信息,并根据所获取到的设备标识信息和微服务标识信息生成主控服务信息,之后,微服务主控平台200将主控服务信息通过网络300发送给微服务授权验证平台400。微服务授权验证平台400在接收到微服务主控平台200发送的主控服务信息之后,会根据主控服务信息,从预设约定信息中提取出微服务主控平台200所对应的微服务部署信息,之后再利用微服务部署信息生成授权文件,以使微服务主控平台200用授权文件为各个微服务进行授权。接着,微服务授权验证平台400通过网络将授权文件发送给微服务主控平台200,微服务主控平台200在接收到微服务授权验证平台400返回的授权文件之后,就可以接收业务节点500发送的业务需求信息,其中,业务需求信息中携带有与其一一对应的业务节点500待授权的微服务。微服务主控平台200对比授权文件和业务需求信息,以针对业务需求信息进行授权,返回业务节点500各自对应的业务节点授权信息,完成针对各个微服务的授权过程。
参见图2,图2是本发明实施例提供的微服务主控平台200的一个可选的结构示意图,图2所示的微服务主控平台200包括:至少一个第一处理器210、第一存储器250、至少一个第一网络接口220和第一用户接口230。微服务主控平台200中的各个组件通过第一总线系统240耦合在一起。可理解,第一总线系统240用于实现这些组件之间的连接通信。第一总线系统240除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图2中将各种总线都标为第一总线系统240。
第一处理器210可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(dsp,digitalsignalprocessor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
第一用户接口230包括使得能够呈现媒体内容的一个或多个第一输出装置231,包括一个或多个扬声器和/或一个或多个视觉显示屏。第一用户接口230还包括一个或多个第一输入装置232,包括有助于用户输入的用户接口部件,比如键盘、鼠标、麦克风、触屏显示屏、摄像头、其他输入按钮和控件。
第一存储器250包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(rom,readonlymemory),易失性存储器可以是随机存取存储器(ram,randomaccessmemory)。本发明实施例描述的第一存储器250旨在包括任意适合类型的存储器。第一存储器250可选地包括在物理位置上远离第一处理器210的一个或多个存储设备。
在一些实施例中,第一存储器250能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
第一操作系统251,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;
第一网络通信模块252,用于经由一个或多个(有线或无线)第一网络接口220到达其他计算设备,示例性的第一网络接口220包括:蓝牙、无线相容性认证(wi-fi)、和通用串行总线(usb,universalserialbus)等;
第一显示模块253,用于经由一个或多个与第一用户接口230相关联的第一输出装置231(例如,显示屏、扬声器等)使得能够呈现信息(例如,用于操作外围设备和显示内容和信息的用户接口);
第一输入处理模块254,用于对一个或多个来自一个或多个第一输入装置232之一的一个或多个用户输入或互动进行检测以及翻译所检测的输入或互动。
在一些实施例中,本发明实施例提供的主控装置可以采用软件方式实现,图2示出了存储在第一存储器250中的主控装置255,其可以是程序和插件等形式的软件,包括以下软件模块:信息生成模块2551、第一发送模块2552、第一接收模块2553、授权模块2554,将在下文中说明各个模块的功能。
在另一些实施例中,本发明实施例提供的主控装置255可以采用硬件方式实现,作为示例,本发明实施例提供的主控装置255可以是采用硬件译码处理器形式的处理器,其被编程以执行本发明实施例提供的微服务授权方法,例如,硬件译码处理器形式的处理器可以采用一个或多个应用专用集成电路(asic,applicationspecificintegratedcircuit)、dsp、可编程逻辑器件(pld,programmablelogicdevice)、复杂可编程逻辑器件(cpld,complexprogrammablelogicdevice)、现场可编程门阵列(fpga,field-programmablegatearray)或其他电子元件。
示例性的,本发明实施例提供一种微服务主控平台,包括:
第一存储器,用于存储可执行微服务授权指令;
第一处理器,用于执行所述第一存储器中存储的可执行微服务授权指令时,实现本发明实施例微服务主控平台侧提供的微服务授权方法。
参见图3,图3是本发明实施例提供的微服务授权验证服务器400的一个可选的结构示意图,图3所示的微服务授权验证服务器400包括:至少一个第二处理器410、第二存储器450、至少一个第二网络接口420和第二用户接口430。微服务授权验证服务器400中的各个组件通过第二总线系统440耦合在一起。可理解,第二总线系统440用于实现这些组件之间的连接通信。第二总线系统440除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图3中将各种总线都标为第二总线系统440。
第二处理器410可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(dsp,digitalsignalprocessor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
第二用户接口430包括使得能够呈现媒体内容的一个或多个第二输出装置431,包括一个或多个扬声器和/或一个或多个视觉显示屏。第二用户接口430还包括一个或多个第二输入装置432,包括有助于用户输入的用户接口部件,比如键盘、鼠标、麦克风、触屏显示屏、摄像头、其他输入按钮和控件。
第二存储器450包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(rom,readonlymemory),易失性存储器可以是随机存取存储器(ram,randomaccessmemory)。本发明实施例描述的第二存储器450旨在包括任意适合类型的存储器。第二存储器450可选地包括在物理位置上远离第二处理器410的一个或多个存储设备。
在一些实施例中,第二存储器450能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
第二操作系统451,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;
第二网络通信模块452,用于经由一个或多个(有线或无线)第二网络接口420到达其他计算设备,示例性的第二网络接口420包括:蓝牙、无线相容性认证(wi-fi)、和通用串行总线(usb,universalserialbus)等;
第二显示模块453,用于经由一个或多个与第二用户接口430相关联的第二输出装置431(例如,显示屏、扬声器等)使得能够呈现信息(例如,用于操作外围设备和显示内容和信息的用户接口);
第二输入处理模块454,用于对一个或多个来自一个或多个第二输入装置432之一的一个或多个用户输入或互动进行检测以及翻译所检测的输入或互动。
在一些实施例中,本发明实施例提供的授权验证装置可以采用软件方式实现,图3示出了存储在第二存储器450中的授权验证装置455,其可以是程序和插件等形式的软件,包括以下软件模块:第二接收模块4551、提取模块4552、授权文件生成模块4553和第二发送模块4554,将在下文中说明各个模块的功能。
在另一些实施例中,本发明实施例提供的授权验证装置455可以采用硬件方式实现,作为示例,本发明实施例提供的授权验证装置455可以是采用硬件译码处理器形式的处理器,其被编程以执行本发明实施例提供的微服务授权方法,例如,硬件译码处理器形式的处理器可以采用一个或多个应用专用集成电路(asic,applicationspecificintegratedcircuit)、dsp、可编程逻辑器件(pld,programmablelogicdevice)、复杂可编程逻辑器件(cpld,complexprogrammablelogicdevice)、现场可编程门阵列(fpga,field-programmablegatearray)或其他电子元件。
示例性的,本发明实施例提供一种微服务授权验证服务器,包括:
第二存储器,用于存储可执行微服务授权指令;
第二处理器,用于执行所述第二存储器中存储的可执行微服务授权指令时,实现本发明实施例微服务授权验证服务器侧提供的微服务授权方法。
参见图4,图4是本发明实施例提供的业务节点500的一个可选的结构示意图,图4所示的业务节点500包括:至少一个第三处理器510、第三存储器550、至少一个第三网络接口520和第三用户接口530。业务节点500中的各个组件通过第三总线系统540耦合在一起。可理解,第三总线系统540用于实现这些组件之间的连接通信。第三总线系统540除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图4中将各种总线都标为第三总线系统540。
第三处理器510可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(dsp,digitalsignalprocessor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
第三用户接口530包括使得能够呈现媒体内容的一个或多个第三输出装置531,包括一个或多个扬声器和/或一个或多个视觉显示屏。第三用户接口530还包括一个或多个第三输入装置532,包括有助于用户输入的用户接口部件,比如键盘、鼠标、麦克风、触屏显示屏、摄像头、其他输入按钮和控件。
第三存储器550包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(rom,readonlymemory),易失性存储器可以是随机存取存储器(ram,randomaccessmemory)。本发明实施例描述的第三存储器550旨在包括任意适合类型的存储器。第三存储器550可选地包括在物理位置上远离第三处理器510的一个或多个存储设备。
在一些实施例中,第三存储器550能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
第三操作系统551,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;
第三网络通信模块552,用于经由一个或多个(有线或无线)第三网络接口520到达其他计算设备,示例性的第三网络接口520包括:蓝牙、无线相容性认证(wi-fi)、和通用串行总线(usb,universalserialbus)等;
第三显示模块553,用于经由一个或多个与第三用户接口530相关联的第三输出装置531(例如,显示屏、扬声器等)使得能够呈现信息(例如,用于操作外围设备和显示内容和信息的用户接口);
第三输入处理模块554,用于对一个或多个来自一个或多个第三输入装置532之一的一个或多个用户输入或互动进行检测以及翻译所检测的输入或互动。
在一些实施例中,本发明实施例提供的业务装置可以采用软件方式实现,图4示出了存储在第三存储器550中的业务装置555,其可以是程序和插件等形式的软件,包括以下软件模块:业务需求生成模块5551、第三发送模块5552和第三接收模块5553和微服务实现模块5554,将在下文中说明各个模块的功能。
在另一些实施例中,本发明实施例提供的业务装置555可以采用硬件方式实现,作为示例,本发明实施例提供的业务装置555可以是采用硬件译码处理器形式的处理器,其被编程以执行本发明实施例提供的微服务授权方法,例如,硬件译码处理器形式的处理器可以采用一个或多个应用专用集成电路(asic,applicationspecificintegratedcircuit)、dsp、可编程逻辑器件(pld,programmablelogicdevice)、复杂可编程逻辑器件(cpld,complexprogrammablelogicdevice)、现场可编程门阵列(fpga,field-programmablegatearray)或其他电子元件。
示例性的,本发明实施例提供一种业务节点,包括:
第三存储器,用于存储可执行微服务授权指令;
第三处理器,用于执行所述第三存储器中存储的可执行微服务授权指令时,实现本发明实施例业务节点侧提供的微服务授权方法。
下面,将结合本发明实施例提供的微服务授权设备的示例性应用和实施,说明本发明实施例提供的微服务授权方法。
参见图5,图5是本发明实施例提供的微服务授权方法的一个可选的流程示意图一,将结合图5示出的步骤进行说明。
s101、微服务主控平台获取微服务主控平台的设备标识信息和微服务标识信息,并根据设备标识信息和微服务标识信息,生成主控服务信息。
本发明实施例是在需要对微服务进行授权的时候实现的,业务使用端在将微服务平台私有化至本地之后,还需要在微服务获得授权之后,才能实施各个微服务。在对微服务进行授权时,用于搭建微服务平台的主控制节点,即微服务主控平台先要获取自身的设备标识信息,以及微服务平台的微服务标识信息,然后将设备标识信息和微服务标识信息打包成主控服务信息,以便于后续通过主控服务信息获取到微服务主控平台所对应的授权文件。
需要说明的是,设备标识信息指的是能够用来表征微服务主控平台的身份的标识信息。可以理解的是,设备标识信息中可以包含有微服务主控平台的硬件设备信息,也可以包含有微服务主控平台的系统软件信息、微服务主控平台的网络地址信息等,便于后续微服务授权验证平台就能够根据主控服务信息,了解到主控服务信息的身份,然后生成与微服务主控平台对应的授权文件。
在本发明的一些实施例中,设备标识信息可以以设备指纹的形式存在,即微服务主控平台根据硬件设备信息和系统软件信息,生成微服务主控平台对应的设备指纹,将该设备指纹作为设备标识信息。
进一步的,由于微服务主控平台可以是在私有化微服务平台时,由业务使用端所指定好的微服务平台的主控制节点,因而,微服务主控平台的硬件设备信息、系统软件信息等,是提前在微服务授权验证平台中备案过的;相应的,微服务标识信息是业务使用端私有化微服务平台时,由微服务授权验证平台根据所要搭建的微服务平台的产品信息,例如产品号、版本等信息,业务使用端可以其从微服务授权验证平台所得到的微服务标识提供给微服务主控平台。
在本发明的一些实施例中,微服务主控平台可以先将微服务主控平台的设备标识信息和微服务标识信息打包起来,在得到的打包结果作为验证信息包,之后,微服务主控平台对验证信息包进行编码,并将编码结果作为主控服务信息。
可以理解的是,微服务主控平台所使用的编码算法,可以是业务使用端在私有化微服务平台时,与微服务授权验证平台协商好的,这样,微服务授权验证平台在得到主控服务信息之后,就可以利用与该编码算法相对应的解密算法,来对主控服务信息进行解码,从而得到微服务主控平台的设备标识信息和微服务标识信息。
可以理解的是,业务使用端表征业务使用方的工作人员所使用的设备,例如,业务使用方的工作人员所使用的个人电脑、服务器等。
本发明实施例中,硬件设备信息可以是指微服务主控平台的设备码等信息,系统软件信息可以是指微服务主控平台所使用的系统的版本等信息,具体的硬件设备信息和系统软件信息可以根据实际情况进行设置,本发明实施例在此不过限定。
s102、微服务主控平台将主控服务信息发送给微服务授权验证平台,以使得微服务授权验证平台根据主控服务信息生成授权文件。
微服务主控平台将主控服务信息通过网络发送给微服务授权验证平台,微服务授权验证平台接收微服务主控平台发送的主控服务信息,其中,主控服务信息表征待授权的微服务主控平台对应的身份相关信息。
需要说明的是,本发明实施例中,微服务主控平台可以直接将主控服务信息发送给微服务授权验证平台,也可以先将主控服务信息发送给业务使用端,然后通过业务使用端将主控服务信息发送给微服务授权验证平台,如此,可以使主控服务信息的发送可以由业务使用方的工作人员进行控制。
可以理解的是,主控服务信息是表征待授权的微服务主控平台对应的身份相关信息。在本发明实施例中,为了避免微服务授权验证平台对整个微服务平台授权,或是对每个物理节点,即业务节点进行授权,微服务主控平台通过主控服务信息向微服务授权验证平台证明自身的身份,以获得微服务授权验证平台对自身的授权,以便于其根据授权文件对业务使用端所要进行的各个微服务进行授权,换句话说,这种方式是授权验证服务节点对微服务平台的主控制节点进行授权,然后通过已经授权的主控制节点管理微服务平台。
s103、微服务授权验证平台根据主控服务信息,从预设约定信息中提取出微服务部署信息;微服务部署信息为已约定的微服务相关信息。
由于主控服务信息中包含有设备标识信息和微服务标识信息,而设备标识信息是表征了微服务主控平台的身份,微服务标识信息表征了微服务平台的产品信息,因此,微服务授权验证平台在接收到主控服务信息之后,便会找到与业务使用端在私有化微服务平台时所约定好的预设约定信息,再将预设约定信息中已经约定好的微服务相关信息提取出来,作为与微服务主控平台所对应的微服务部署信息,以便于在后续根据微服务部署信息生成授权文件,来对微服务平台进行授权。
需要说明的是,微服务部署信息是微服务授权验证平台针对业务使用端对微服务平台上的微服务的需求所生成的,微服务部署信息是在业务使用端私有化微服务平台时就生成的,即是在微服务授权过程开始之前就已经生成的。
可以理解的是,业务使用端在私有化微服务平台时,会根据自身对微服务平台的需求,来指定其可以实施的微服务的类别和数量,微服务授权验证平台在明确了业务使用端对于微服务平台的需求之后,就可以根据该需求确定出生成对应的微服务部署信息,并在微服务部署信息中指定微服务平台中可以实施微服务的类别和微服务的数量,甚至指定实施微服务的业务节点的硬件要求和软件要求。换句话说,微服务部署信息可以理解为业务使用端和微服务授权验证平台,已经约定的微服务相关信息。
在本发明的一些实施例中,微服务部署信息中不仅包括了微服务的类别和微服务的数量,还包括了在私有化微服务平台时,由业务使用端提供给微服务授权验证平台的微服务主控平台的设备标识信息,也就是说,微服务授权验证平台知晓微服务部署信息对应着哪个微服务主控平台。
s104、微服务授权验证平台利用微服务部署信息生成授权文件;授权文件用于对各个微服务进行授权。
微服务授权验证平台在得到微服务部署信息之后,就可以根据微服务部署信息中的全部内容,或是微服务部署信息中与微服务的授权所相关部分内容,例如,微服务平台可以实施微服务的类别和微服务的数量,业务节点的硬件要求和软件要求等,生成与微服务主控平台所对应的授权文件,这样,授权文件中就具有了对微服务的授权所需要的内容,以便于后续将授权文件发送给微服务主控平台之后,由微服务主控平台根据授权内容完成对各个微服务的授权。
需要说明的是,在本发明的一些实施例中,微服务授权验证平台还会将微服务部署信息中的全部内容,或是微服务部署信息中与微服务的授权相关的部分内容进行加密,将加密后的文件作为授权文件,以防止授权在传输过程中被泄露所带来安全隐患。
可以理解的是,微服务授权验证平台可以将微服务部署信息,或是微服务部署信息中与微服务的授权所相关部分内容打包成中间授权文件,然后对中间授权文件进行进一步的处理,例如加密处理等,以防止微服务部署信息中的内容被泄露。
s105、微服务主控平台接收微服务授权验证平台返回的授权文件,以利用授权文件对各个微服务进行授权。
微服务授权验证平台将授权文件发送给微服务主控平台,以使微服务主控平台利用授权文件,完成针对微服务平台上的各个微服务的授权。微服务主控平台在接收到微服务授权验证平台根据主控服务信息所生成并返回的授权文件之后,就表明微服务主控平台已经获得了微服务授权验证平台的授权,以使后续微服务主控平台能够利用该授权文件对各个微服务进行授权。当然,若是微服务授权验证平台没有给微服务主控平台返回授权文件,则说明微服务授权验证平台没有对微服务主控平台进行授权,此时,微服务主控平台是无法对微服务进行授权的。
可以理解的是,由于微服务主控平台在发送主控服务信息时,是可以先将主控服务信息发送给业务使用端,然后通过业务使用端将主控服务信息发送给微服务授权验证平台的,因而,相对应的,授权服务设备在发送授权文件时,可以是先将授权文件发送给业务使用端,然后通过业务使用端将授权文件加载给微服务主控平台。当然,微服务授权验证平台也可以根据验证标识信息中微服务主控平台的网络地址信息等,直接将授权文件发送给微服务主控平台,本发明实施例在此不作限定。
s106、当业务节点接收到微服务请求时,根据微服务请求生成业务需求信息。
业务节点接收微服务请求时,业务节点先会根据微服务请求分析出自身需要进行何种类型的微服务,以及所要进行的微服务的个数,即判断自身的微服务需求,之后,当业务节点将所判断出微服务需求,打包成业务需求信息,以便于后续将业务需求信息发送给微服务主控平台。
s107、微服务主控平台接收至少一个业务节点发送的至少一个业务需求信息;其中,至少一个业务需求信息中携带有与其一一对应的至少一个业务节点待授权的微服务。
业务节点将业务需求信息发送给微服务主控平台,由于业务节点可能不止一个,因而,微服务主控平台是通过网络接收至少一个业务节点发送的至少一个业务需求信息,其中,每个业务节点所发送的业务需求信息中携带有该业务节点所要进行的微服务的类型与数目,即待授权的微服务。此时,微服务主控平台便会得知业务节点想要进行的微服务的类型和数目。
s108、微服务主控平台对比至少一个业务需求信息是否超出了授权文件的范围,以分别针对至少一个业务需求信息进行授权处理,返回至少一个业务节点各自对应的业务节点授权信息,完成针对各个微服务的授权。
由于此时微服务主控平台已经得到了微服务授权验证平台的授权,即得到了对应的授权文件,微服务主控平台就可以利用该授权文件,对各个业务节点待授权的微服务进行授权管理了。具体的,微服务主控平台从授权文件中解析出微服务平台上所能实施的微服务的类别和微服务的数量,即提供了授权的范围要求,微服务主控平台判断所接收到业务节点所对应的待授权微服务的类别、个数是符合授权文件的范围要求。
微服务主控平台将授权文件所提供的微服务平台上可以实施的微服务的类别和微服务的数量,与业务需求信息中业务节点需要进行的微服务的类型和微服务的个数进行对比,当业务节点需要进行的微服务的类型和微服务的个数中的任意一个,超出了授权文件的范围时,微服务主控平台会得到表征需求超范围的比对结果,从而生成拒接授权的业务节点授权信息;当业务节点需要进行的微服务的类型和微服务的个数均未超出授权文件的范围时,微服务主控平台会得到表征需求处于授权范围内的比对结果,从而生成允许授权的业务节点授权信息。如此,微服务主控平台就能够得到至少一个业务节点各自对应的业务节点授权信息。之后,微服务主控平台将这些业务节点授权信息对应返回给各个业务节点。业务节点接收微服务主控平台返回的业务节点授权信息,其中,业务节点授权信息是主控服务器设备基于业务需求信息生成的,这时,业务节点就能根据业务节点授权信息,明确其是否可以进行所需求的微服务,如此,微服务主控平台就完成了对微服务的授权过程。
在本发明的一些实施例中,授权文件中还可以指定业务节点的硬件要求和软件要求,此时,微服务主控平台还会判断业务节点的硬件条件与软件条件是否满足授权文件中针对业务节点的要求。
需要说明的是,判断业务节点的硬件条件与软件条件是否满足授权服务中针对业务节点的要求,是为了将业务节点中不符合要求的物理节点排除在微服务平台之外,以免这些不符合要求的物理节点给微服务平台的数据安全、或是运行稳定性带来影响。
示例性的,本发明实施例提供了微服务授权过程的示意图一,参见图6,微服务主控平台6-1根据设备标识信息和微服务标识信息生成主控服务信息6-2,并将主控服务信息6-2发送给了微服务授权验证平台6-3。微服务授权验证平台6-3根据主控服务信息找到微服务部署信息,然后生成授权文件6-4,并将授权文件6-4返回给微服务主控平台6-1,以使微服务主控平台6-1获得授权。微服务主控平台6-1在得到授权文件6-4之后,可以接收业务节点6-5(示出了业务节点6-51、业务节点6-52、业务节点6-53和业务节点6-54,以及实施在业务节点6-51和业务节点6-52上的微服务6-a,实施在业务节点6-53和业务节点6-54上的微服务6-b)的业务需求信息,根据授权文件判断业务节点6-5上实施的微服务是否满足微服务的类别、微服务的个数要求,以及业务节点6-5是否满足实施微服务的业务节点的硬件要求和软件要求,在满足上述各类要求时微服务主控平台6-1为这些微服务授权,并向这些业务节点返回业务节点授权信息。如此,就完成了针对微服务的授权。
示例性的,本发明实施例提供了微服务授权过程的示意图二,参见图7,当有多个业务使用端需要利用微服务平台部署实施微服务时,微服务授权验证平台7-1会分别收到这些业务使用端各自所指定的微服务平台的主控制节点,即微服务主控平台7-2、微服务主控平台7-3和微服务主控平台7-4所发送的主控服务信息,然后根据这些微服务主控平台所发送的主控服务信息,分别为微服务主控平台7-2、微服务主控平台7-3和微服务主控平台7-4发送各自对应的授权文件,换句话说,微服务主控平台7-2、微服务主控平台7-3和微服务主控平台7-4得到了微服务授权验证平台7-1的授权。之后,微服务主控平台7-2根据其所对应的授权文件对其下属的业务节点7-21、业务节点7-22所要进行的微服务进行授权管理;微服务主控平台7-3根据其所对应的授权文件对其下属的业务节点7-31、业务节点7-32和业务节点7-33所要进行的微服务进行授权管理;微服务主控平台7-4根据其所对应的授权文件对其下属的业务节点7-41所要进行的微服务进行授权管理,如此,微服务授权验证平台7-1不必再将微服务平台作为整体进行授权,也不需要对所有的业务节点进行授权,而是通过分别对微服务主控平台7-2、微服务主控平台7-3和微服务主控平台7-4进行授权,进而通过这些微服务主控平台对各自下属的业务节点进行授权管理,提高了微服务授权的可扩展度和易部署度。
s109、业务节点基于业务节点授权信息,实现微服务。
业务节点在得到业务节点授权信息之后,就会知晓其所要实施的微服务是否得到了微服务主控平台的授权,若是微服务得到了授权,则业务节点在自身上实现该微服务。
本发明实施例中,微服务主控平台获取自身的设备标识信息和微服务标识信息,进而根据设备标识信息和微服务标识信息生成主控服务信息,通过将主控服务信息发送给微服务授权验证平台,以及接收微服务授权验证平台返回的授权文件的方式,获得微服务授权验证平台对微服务主控平台的授权,然后在接收到至少一个业务节点发送的至少一个业务需求信息之后,对比至少一个业务需求信息是否超出了微服务授权验证平台所生成授权文件的范围,以为至少一个业务节点返回各自对应的业务节点授权信息,完成针对各个微服务的授权。如此,微服务主控平台能够先从微服务授权验证平台获得授权,再根据所获得的授权文件对业务节点所有进行的微服务进行授权管理,提高了微服务平台的易部署度和可扩展度。
在本发明的一些实施例中,微服务主控平台在接收微服务授权验证平台返回的授权文件之后,接收至少一个业务节点发送的至少一个业务需求信息之前,即s105之后,s107之前,该方法还可以包括:s110-s112,如下:
s110、微服务主控平台对授权文件进行解密,得到解密文件信息。
s111、微服务主控平台从解密文件信息中提取出检验标识信息;检验标识信息表征授权文件中微服务主控平台的设备标识信息。
微服务主控平台在接收到授权文件之后,可以先验证授权文件是否与微服务主控平台对应,以避免微服务主控平台从微服务授权验证平台中拿到了不匹配的授权文件,为微服务的授权造成影响,或是防止授权文件被拷贝至其他设备,使得其他设备能够冒充微服务主控平台,给微服务的授权带来影响。由于微服务部署信息中具有微服务主控平台的设备标识信息,授权文件时根据微服务部署信息生成得到的,因此,微服务授权验证平台可以将该设备标识信息,作为检验标识信息的验证标识信息写入到授权文件之中,以便于微服务主控平台进行授权文件的有效性检验。微服务主控平台在拿到授权文件之后,可以先对授权文件进行解密,得到解密文件信息,并将解密文件信息中所提取到的检验标识信息。
s112、微服务主控平台将验证标识信息和检验标识信息进行比较,得到检验结果。
微服务主控平台在得到检验标识信息之后,就可以将检验标识信息与所获取到的自身的设备标识信息进行比较,以进行授权文件的有效性检验,得到检验结果,即得知授权文件是否有效。若是微服务主控平台得到了与其自身不对应的授权文件,即所得到的授权文件是无效的时候,再去接收业务节点所发送的业务需求信息是没有意义的,因而,微服务主控平台只有当检验结果表征授权文件有效时,接收至少一个业务节点发送的至少一个业务需求信息。
本发明实施例中,微服务主控平台先对授权文件进行解密,得到解密文件信息,并从解密文件信息中提取出检验标识信息,再利用之前获得的设备标识信息和检验标识信息进行比较,得到检验结果,只有当检验结果有效时,继续接收业务节点发送的业务需求信息,以避免利用不匹配的授权文件为业务节点进行授权。
在本发明的一些实施例中,微服务主控平台将验证标识信息和检验标识信息进行比较,得到检验结果,即s112的具体实现过程,可以包括:s1121-s1122,如下:
s1121、当设备标识信息和检验标识信息相同时,检验结果表征授权文件有效。
微服务主控平台比较验证标识信息和检验标识信息,当判断出检验标识信息是与检验标识信息相同时,微服务主控平台会认为其收到了与自身对应的授权文件,此时,微服务主控平台所生成的检验结果表征授权文件有效。
s1122、当设备标识信息和检验标识信息不同时,检验结果表征授权文件无效。
当微服务主控平台获知设备标识信息和检验标识信息是不同的时候,微服务主控平台则认为收到的授权文件与自身并不对应,此时,微服务主控平台所生成的检验结果表征该授权文件无效,如此,微服务主控平台就完成了对验证标识信息和检验标识信息的比较过程,得到了检验结果。
本发明实施例中,微服务主控平台会根据设备标识信息和检验标识信息的相同与否,生成表征授权文件有效,或是表征授权文件无效的检验结果,如此,微服务主控平台就能够得到检验结果,以使得后续主控设备能够根据检验结果,判断是否要利用授权文件对微服务平台进行授权。
在本发明的一些实施例中,微服务主控平台在对授权文件进行解密,得到解密文件信息之后,从中间授权文件中提取出检验标识信息之前,即在s110之后,s111之前,该方法还包括:s201-s203,如下:
s201、微服务主控平台从解密文件信息中查找出中间授权文件的哈希值;中间授权文件的哈希值是由微服务授权验证平台生成的。
微服务主控平台在得到解密文件信息之后,从解密文件信息中提取出中间授权文件之前,还会逐一判断对解密文件信息中的各个文件信息是否为固定长度的消息摘要,当发现解密文件信息中存在固定长度的消息摘要时,微服务主控平台就会认定该消息摘要为中间授权文件的哈希值,如此,微服务主控平台就得到了中间授权文件的哈希值。可以理解的是,中间授权文件的哈希值是由微服务授权验证平台所生成的,用于检验授权文件是否被篡改。
s202、微服务主控平台从解密文件信息中提取出中间授权文件,并对中间授权文件进行哈希运算,得到待验证哈希值。
微服务主控平台在得到中间授权文件的哈希值之后,会紧接着利用与微服务授权验证平台在生成中间授权文件的哈希值相同的哈希函数,来对中间授权文件进行哈希运算,并将哈希运算所得到的结果作为待验证哈希值。
需要说明的是,微服务授权验证平台可以在业务使用端私有化微服务平台时,将其所使用的哈希函数提供给业务使用端,以使业务使用端将该哈希函数提供给微服务主控平台,如此,微服务主控平台就能够得到微服务授权验证平台使用的哈希函数,以进行哈希运算。当然,微服务主控平台还可以通过其他方式得到微服务授权验证平台所使用的哈希函数,本发明实施例在此不作限定。
s203、微服务主控服务平台比较中间授权文件的哈希值和待验证哈希值,得到哈希值比较结果;哈希值比较结果用于说明中间授权文件是否被篡改。
微服务主控平台将中间授权文件的哈希值和待验证哈希值进行比较,得到哈希值比较结果。当哈希值比较结果表征中间授权文件的哈希值与待验证哈希值相同时,微服务主控平台认为中间授权文件没有被篡改过,这时,微服务主控平台会继续从中间授权文件中提取出检验标识信息的流程,以验证授权文件是否有效。当哈希值比较结果表征中间授权文件的哈希值与待验证哈希值不同时,微服务主控平台认为中间授权文件已经被篡改,表明后续将从中间授权文件中所提取出的检验标识信息与设备标识信息进行比较,以确定授权文件是否有效的过程已经失去了有效性验证意义,此时,微服务主控平台会中断后续从中间授权文件中提取出检验标识信息的过程,而是向微服务授权验证平台发送消息,以重新从微服务授权验证平台获取授权文件。
本发明实施例中,微服务主控平台会先从解密文件信息中找到中间授权文件的哈希值,然后对中间授权文件进行哈希运算,得到待验证哈希值,最后将找出的中间授权文件的哈希值,与计算出的待验证哈希值进行比较,来判断中间授权文件是否被篡改,如此,能够防止微服务主控平台利用被篡改的授权文件对微服务进行授权,提供微服务授权的安全程度。
在本发明的一些实施例中,微服务主控平台将主控服务信息发送给微服务授权验证平台,即s102的具体实现过程,可以包括:s1021-s1022,如下:
s1021、微服务主控平台将主控服务信息发送给第三方设备。
s1022、微服务主控平台通过第三方设备,将主控服务信息发送给微服务授权验证平台。
主控服务器在发送主控服务信息时,可以先将主控服务信息发送给第三方设备,然后由第三方设备将主控服务信息发送给微服务授权验证平台。与此同时,微服务主控平台利用业务使用端传输主控服务信息的过程,会相应地变化为微服务主控平台将主控服务信息发送给业务使用端,由业务使用端将主控服务信息发送给第三方设备,最终通过第三方设备将主控服务信息发送给微服务授权验证平台,完成将主控服务信息发送给微服务授权验证平台的过程。
本发明实施例中,微服务主控平台可以通过将主控服务信息发送给第三方设备,通过第三方设备将主控服务信息发送给微服务授权验证平台的方式,将主控服务信息发送给微服务授权验证平台,以使得在微服务主控平台不允许接入互联网的情况下,继续完成主控服务信息的发送操作。
在本发明的一些实施例中,微服务主控平台在对比授权文件和至少一个业务需求信息,以分别针对至少一个业务需求信息进行授权处理,返回至少一个业务节点各自对应的业务节点授权信息,完成针对各个微服务的授权之后,即在s108之后,该方法还可以包括:s204-s205,如下:
s204、微服务主控平台获取配置资源数据;配置资源数据是各个微服务已经占用的硬件资源的数据和软件资源的数据。
微服务主控平台在完成对微服务的授权之后,就会统计在已经授权的微服务的数目,实施这些微服务的所使用的业务节点的数目,业务节点已经被占用的运算能力等,即获取微服务平台中的各个微服务已经占用的硬件资源的数据,和微服务平台中的各个微服务已经占用的软件资源的数据。
需要说明的是,在本发明的一些实施例中,微服务主控平台除了获取配置资源数据,还可以获取其他类型的数据,例如,微服务平台的有效时间等,允许部署的微服务的总数量等,以便于对其他类型的数据也能被呈现出来。
s205、微服务主控平台将配置资源数据呈现在显示界面上。
微服务主控平台在得到配置资源数据之后,就会将配置资源数据呈现在显示界面上,以便于工作人员一目了然地获知微服务平台已经占用的资源。
示例性的,本发明实施例提供了配置资源数据的示意图,如图8所示,在显示界面的显示区域8-1中,可以看出已经授权的微服务的个数8-11为10,表明已经微服务平台已经部署了10个微服务;允许授权的微服务的个数8-12为1000,表明微服务平台总共可以运行授权1000个微服务;微服务可用节点数8-13为5,即表明每个微服务可以最多可以部署在5个业务节点上;授权有效期8-14为271天,即说明该微服务平台还可以使用271天。通过显示区域8-1,工作人员就可以明了微服务平台的配置资源数据。
本发明实施例中,微服务主控平台在完成对各个微服务的授权之后,可以获取配置资源数据,并将配置资源数据显示在显示界面上,使得微服务的已经占用的资源可以被一目了然的被获知。
基于图5,参见图9,图9是本发明实施例提供的微服务授权方法的一个可选的流程示意图二,在本发明的一些实施例中,微服务主控平台在接收至少一个业务节点发送的至少一个业务需求信息之后,对比至少一个业务需求信息是否超出授权文件的范围,以分别针对至少一个业务需求信息进行授权处理,返回至少一个业务节点各自对应的业务节点授权信息,完成针对各个微服务的授权之前,即在s107之后,s108之前,该方法还包括:s206-s209,如下:
s206、微服务主控平台向微服务授权验证平台发送更新授权文件询问信息;更新授权文件询问信息用于查询授权文件是否有更新。
微服务主控平台在接收到业务节点发送的业务需求之后,可以先向微服务授权验证平台发送更新授权文件询问信息,以询问微服务授权验证平台授权文件是否存在更新。微服务授权验证平台接收微服务主控平台发送的更新授权文件询问信息,以便于响应更新授权询问信息查询授权文件是否有更新。
可以理解的是,微服务主控平台所发送的更新授权文件询问信息中,包含有授权文件的版本信息,微服务授权验证平台在得到更新授权文件询问信息之后,就可以得知微服务主控平台所拥有的授权文件是哪个版本的。
需要说明的是,本发明实施例中,可以将授权文件的生成日期作为授权文件的版本信息,也可以由微服务授权验证平台为授权文件生成版本号,将版本号作为授权文件的版本信息,还可以利用其他方式生成授权文件的版本信息,本发明实施例在此不作限定。授权文件的版本信息,可以写入到授权文件中,由微服务授权验证平台发给微服务主控平台,也可以由微服务授权验证平台单独将版本信息发给微服务主控平台,本发明实施例在此不作限定。
s207、微服务授权验证平台获取授权文件对应的当前版本信息。
微服务授权验证平台在明确微服务主控平台所拥有的授权文件的版本信息之后,就可以在其自身的存储空间,获取微服务主控平台对应的授权文件的最新的版本信息,即获得当前版本信息。
需要说明的是,业务使用端在私有化微服务平台之后,还可以向微服务授权验证平台提出修改需求,微服务授权验证平台根据修改需求会重新生成新的授权文件,这时,当前版本信息指的是新的授权文件的版本信息,例如,新的授权文件的生成日期,新的授权文件的版本号等。
s208、当当前版本信息高于授权文件的版本信息时,微服务授权验证平台获取当前版本信息对应的当前授权文件,作为更新授权文件。
微服务授权验证平台将当前版本信息与授权文件的版本信息进行比较,当当前版本信息高于授权文件的版本信息时,微服务授权验证平台认为授权文件存在更新,此时,微服务授权验证平台获取当前版本信息所对应的当前授权文件,并将该授权文件作为更新授权文件。
s209、微服务授权验证平台将更新授权文件发送给微服务主控平台。
微服务授权验证平台将更新授权文件发送给主控服务器,微服务主控平台接收微服务授权验证平台发送的更新授权文件,其中,更新授权文件是微服务授权验证平台根据更新授权文件询问信息查询出的。微服务主控平台在接收到更新授权文件之后,就会根据更新授权文件,来分别对至少一个业务需求信息进行授权处理,返回至少一个业务节点各自对应的业务节点授权信息。
本发明实施例中,微服务主控平台能够在从授权文件中解析出授权内容之前,先向微服务授权验证平台发送更新授权文件询问信息,以询问微服务授权验证平台授权文件是否有更新,微服务授权验证平台在确定出授权文件有更新,并得到更新授权文件之后,会将更新授权文件发送给微服务主控平台。之后,微服务主控平台就可以利用更新授权文件对各个微服务进行授权,保证了微服务授权的准确度。
在本发明的一些实施例中,微服务部署信息包括:检验标识信息和授权内容;微服务授权验证平台利用微服务部署信息生成授权文件,即s104的具体实现过程,可以包括:s1041-s1042,如下:
s1041、微服务授权验证平台利用检验标识信息和授权内容,组成中间授权文件;其中,授权内容指定了授权的微服务的类别和微服务的数量。
当微服务部署信息中包括检验标识信息,以及微服务授权验证平台针对业务使用端对微服务平台的需求所生成的授权内容时,微服务授权验证平台可以先将检验标识信息和授权内容打包组成中间授权文件。在这其中,微服务部署信息所指定的微服务平台中所能实施的微服务的类别和微服务的数量,实质上是由微服务部署信息中的授权内容指定的。
可以理解的是,在本发明的一些实施例中,检验标识信息可以是指由业务服务端提供给微服务授权验证平台的微服务主控平台标识信息,还可以是指由微服务主控平台发送给微服务授权验证平台的主控服务信息中的设备标识信息,本发明实施例在此不作限定。
s1042、微服务授权验证平台对中间授权文件进行加密,得到授权文件。
微服务授权验证平台对中间授权文件进行加密,并将加密后的密文文件,作为授权文件,以使得授权文件在传输过程中无法被恶意篡改,避免为微服务的安全造成影响。
可以理解的是,微服务授权验证平台可以利用对称加密算法对中间授权文件进行加密,也可以利用非对称加密算法对中间授权文件进行加密,还可以先利用指定的加密算法先对中间授权文件进行加密,得到加密结果,再利用非对称加密算法对加密结果进行加密。具体的对中间授权文件进行加密的方式可以根据实际需求进行选择,本发明实施例在此不作限定。
需要说明的是,业务使用端在私有化微服务平台时,微服务授权验证平台就会将相应的解密密钥提供给业务使用端,以使业务使用端将解密密钥提供给其所指定的微服务主控平台,如此,微服务主控平台在得到授权文件之后,就可以对授权文件进行解密了。
示例性的,本发明实施例提供了对中间授权文件进行加密的示意图,如图10所示,微服务授权验证平台在得到中间授权文件baseinfo.txt之后,可以在微服务授权验证平台的前端显示界面的显示区域10-1上显示中间授权文件baseinfo.txt中的内容。在显示区域10-1中,仅示出了业务节点数量上限10-11:10000;微服务主控平台上限数量10-12:1,服务a的相关参数10-13:100个节点,8核,100g,50m(即表明服务a可以部署在100个业务节点上,业务节点的硬件要求是需要有8核的处理器,100g的存储空间,以及服务a所占用的带宽为50m),有效期限10-14:2024-09-10,哈希值10-15:xxxxxx(即对上述内容进行哈希运算所得到的哈希值)。在前端显示界面的显示区域10-2中,显示有针对中间授权文件的操作选项,分别为:生成密钥10-21,即通过选择此选项为中间授权文件创建密钥;密钥加密10-22,即通过选择此选项用生成的密钥对中间授权文件进行加密;密钥解密10-23,即通过此选项用密钥解密授权文件;退出10-24,即通过选择此选项退出对中间授权文件的加密操作界面。如此,微服务授权验证平台就可以通过接收工作人员的操作选项,为中间授权文件进行加密操作等。
本发明实施例中,微服务授权验证平台能够先利用检验标识信息和授权内容组成中间授权文件,然后再利用加密算法对中间授权文件进行加密,将最终的加密结果作为授权文件。通过上述方式,能够提高授权内容和检验标识信息在传输过程中的安全程度。
在本发明的一些实施例中,微服务授权验证平台在利用检验标识信息和授权内容,组成中间授权文件之后,对中间授权文件进行加密,得到授权文件之前,即在s1041之后,s1042之前,该方法还可以包括:s1043-s1044,如下:
s1043、微服务授权验证平台对中间授权文件进行哈希运算,得到中间授权文件的哈希值。
即使是将中间授权文件进行加密得到授权文件,但授权文件还是会存在泄漏风险,例如,解密密钥被泄露,使得授权文件存在用泄漏的解密密钥破解之后被篡改的风险。此时,微服务授权验证平台利用哈希算法,对中间授权文件进行哈希运算,将哈希运算的结果作为中间授权文件的哈希值,以便于后续利用中间授权文件的哈希值,判断检验标识信息和授权内容是否被篡改。
可以理解的是,微服务授权验证平台可以利用任意一个哈希函数来对中间授权文件进行哈希运算,例如,利用安全散列算法(securehashalgorithm,sha)对中间授权文件进行哈希运算等,本发明实施例在此不作限定。
s1044、微服务授权验证平台将中间授权文件的哈希值写入至中间授权文件中,得到修改后的中间授权文件。
微服务授权验证平台在得到中间授权文件的哈希值之后,就会将中间授权文件的哈希值写入到中间授权文件之中,并将进行写入哈希值操作所得到的新文件,作为修改后的中间授权文件。在得到修改后的中间授权文件之后,对中间授权文件加密得到授权文件的过程,就相应的变为:对修改后的中间授权文件进行加密,得到授权文件。如此,在后续微服务授权验证平台将授权文件发送给微服务主控平台之后,微服务主控平台可以先对授权文件进行解密,然后从解密得到的文件中提取出中间授权文件的哈希值和中间授权文件,之后,微服务主控平台可以通过对中间授权文件进行哈希运算,通过比较提取出的中间授权文件的哈希值,和运算出的中间授权文件的哈希值,判断授权文件中的内容是否被恶意篡改过。
本发明实施例中,微服务授权验证平台能够对中间授权文件进行哈希运算,得到中间授权文件的哈希值,再将中间授权文件的哈希值写入仅中间授权文件之中,得到修改后的中间授权文件,最后对修改后的中间授权文件进行加密得到授权文件,如此,能够利用中间授权文件的哈希值,还判断授权文件中的内容是否被恶意篡改过,进一步提高授权文件传输的安全程度。
在本发明的一些实施例中,微服务授权验证平台根据主控服务信息,从预设约定信息中提取出微服务部署信息,即s103的具体实现过程,可以包括:s1031-s1033,如下:
s1031、微服务授权验证平台对主控服务信息进行解析,得到微服务标识信息和主控服务设备的设备标识信息。
微服务授权验证平台在得到主控服务信息之后,会对主控服务信息进行解析,从中得到微服务主控平台通过验证标识信息,所发送的产品标识信息和微服务主控平台的标识信息。其中,产品标识信息是指业务使用端在私有化微服务平台时,从微服务授权验证平台所得到的表征微服务平台的产品编号。
s1032、微服务授权验证平台利用微服务标识信息和设备标识信息,从约定信息结合中匹配出预设约定信息。
s1033、微服务授权验证平台从预设约定信息中读取出微服务部署信息。
微服务授权验证平台利用所得到的微服务标识信息,和微服务主控平台的设备标识信息,从预先设置好的约定信息集合中匹配出与微服务主控平台对应的预设约定信息,然后再从预设约定信息中读取出微服务部署信息,如此,微服务授权验证平台就可以得到微服务部署信息了。
需要说明的是,由于在实际应用中,可能会存在不同的业务使用端,这些业务使用端在私有化微服务平台时,会向微服务授权验证平台提出不同的需求,因而,微服务授权验证平台会针对每个业务使用端,都生成关于微服务平台的约定信息,这些约定信息在微服务授权验证平台中以约定信息集合的形式统一存储。微服务授权验证平台会将业务使用端所提供的微服务主控平台的设备标识信息,以及自身所生成的微服务标识信息都写入至了约定信息中,这样一来,微服务授权验证平台在得到与特定的微服务主控平台对应的微服务主控平台的设备标识信息和微服务标识信息之后,就能够匹配出与微服务主控平台对应的预设约定信息,进而得到与微服务主控平台对应的微服务部署信息。
本发明实施例中,微服务授权验证平台能够从主控服务信息中解析出微服务标识信息和微服务主控平台的设备标识信息,进而根据微服务标识信息和微服务主控平台的设备标识信息从约定信息集合中确定出与微服务主控平台对应的预设约定信息,进而从预设约定信息中提取出与微服务主控平台对应的微服务部署信息,如此,微服务授权验证平台就能够得到微服务部署信息。
在本发明的一些实施例中,微服务授权验证平台将授权文件发送给微服务主控平台,即s105对应具体实现过程,可以包括:s1051-s1052,如下:
s1051、微服务授权验证平台将授权文件发送给第三方设备。
s1052、微服务授权验证平台通过第三方设备,将授权文件发送给微服务主控平台。
由于考虑到微服务平台的数据安全问题,有些微服务主控平台是不能直接接入互联网的,这时,微服务授权验证平台先将授权文件发送给第三方设备,然后再由第三方设备,将授权文件传输给微服务主控平台,以避免微服务主控平台直接与互联网连接。
需要说明的是,微服务授权验证平台通过第三方设备将授权文件发送给微服务主控平台时,可以是通过由第三方设备通过局域网将授权文件发送给微服务主控平台,也可以是第三方设备通过拷贝等方式,来实现将授权文件发送给微服务主控平台,本发明实施例在此不作限定。
进一步的,对于微服务授权验证平台在将授权文件先发送给业务使用端,然后通过业务使用端将授权文件发送给微服务主控平台的情况,在本发明实施例中,微服务授权验证平台可以先将授权文件发送给第三方设备,然后由第三方设备通过拷贝、局域网等方式发送给业务使用端,再由业务使用端将授权文件加载至微服务主控平台,以使得业务使用端在不便接入互联网时,也可以实现将授权文件加载给微服务主控平台的过程。
示例性的,参见图11,本发明实施例提供了业务使用端将授权文件加载给微服务主控平台的示意图。当微服务授权验证平台将授权文件发送给可以接入互联网的第三方设备,再由第三方设备通过拷贝的方式将授权文件传输给业务使用端之后,业务使用端的可以接收工作人员通过图11所示出的文件加载控件接收加载指令,从业务使用端的存储空间中,例如从本地磁盘c:中读取出授权文件11-1,并在接收到工作人员针对打开11-2虚拟按键的指令之后,将授权文件11-1发送给微服务主控平台。
本发明实施例中,微服务授权验证平台能够将授权文件发送给第三方设备,并通过第三方设备实现将授权文件发送给微服务主控平台的过程,同时,当业务使用端不便接入互联网时,也可以通过该方式将授权文件发送给微服务主控平台,如此,可以使得微服务主控平台不直接接入互联网,保证了微服务平台的数据安全。
下面,将说明本发明实施例在一个实际应用场景中的示例性应用。
图12是本发明实施例提供的实际应用场景中的微服务授权过程示意图。参见图12,license主控服务12-1(微服务主控平台)根据设备标识信息生成主控服务信息12-2,并将主控服务信息发送12-2发送给可访问外网client12-3(第三方设备),通过可访问外网client12-3将主控服务信息12-2发送给license生成服务12-4(微服务授权验证平台),license生成服务12-4根据主控服务信息,得到相应的授权文件12-5,并将授权文件12-5发送给可访问外网client12-3,以通过可访问外网client12-3将授权文件返回给license主控服务12-1。license主控服务12-1得到授权文件12-5之后,可以接收节点12-6(业务节点)(示例性示出了节点12-61、节点12-62、节点12-63、节点12-64)上报的业务请求12-7(业务需求信息),然后根据授权文件12-5业务节点12-6进行授权,并向业务节点12-6返回可用状态12-8(业务节点授权信息)。同时,license主控服务12-1还可以获得微服务平台中已经使用的资源数据,例如运算能力,已经部署的微服务等,并将这些已经使用的资源数据显示在web页面12-9中。
具体的,本发明实施例对微服务的授权过程,可以分别从部署授权流程与授权检验流程两个角度进行说明。图13为本发明实施例提供的部署授权流程的示意图,图14是本发明实施例提供的授权检验流程的示意图。
如图13所示,在部署授权流程开始13-1之后,业务使用端先要选择用于部署license主控服务的设备,即部署主控节点设备,在主控节点设备上部署license主控服务,并用主控节点设备生成其自身的硬件指纹(设备标识信息),将硬件指纹打包生成主控服务信息13-2。license主控服务把主控服务信息拷贝到可访问外网client上13-3,通过可访问外网client,访问license生成服务13-4。license生成服务负责对license主控服务的硬件指纹进行检验13-5,并结合采购合同中的采购信息(微服务部署信息),生成正式的授权文件13-6,并返回给可访问外网client。可访问外围client将授权文件发送给license主控服务,license主控服务对授权文件解码,并利用硬件指纹对授权文件进行有效性检验13-7,如果检验成功则完成授权记录13-8,并更新已用算力(已经占用的硬件资源的数据)和业务部署信息(已经占用的软件资源的数据)13-9,之后结束13-11该过程;如果检验失败则记录出错信息13-10,并结束13-11该过程。
如图14所示,在授权检验流程开始14-1之后,license主控服务生成设备标识14-2(设备标识信息),这一步的目的是生成license主控服务所在的节点,即主控节点的设备指纹,将授权文件与主控节点绑定以防止授权文件被拷贝到其他设备重复使用,给微服务平台带来安全隐患。在生成设备标识14-2的具体过程中,license主控服务要收集硬件信息14-2a,例如设备码等,收集软件信息14-2b,例如系统版本等,并根据硬件信息和软件信息生成设备指纹14-2c,再获取事先已经知道的微服务平台的产品号(微服务标识信息)。之后,license主控服务将设备指纹和产品号作传入参数,传递给license生成服务。传递给license生成服务校验传入参数以及准备授权数据14-3,在该过程中,license生成服务检验产品号和设备指纹在license生成服务是否有备案14-3a,在有备案时读取出产品号和设备指纹对应的可部署服务策略信息14-3b(微服务部署信息),并获取附加的业务数据14-3c,例如有效时间,设备指纹等,最后将可部署服务策略信息和附加的业务数据作为中间授权文件。之后,license生成服务就要生成授权文件14-4,其中,license生成服务对中间授权文件进行哈希运算,得到哈希值14-4a(中间授权文件的哈希值),并将哈希值写入到中间授权文件中(得到修改后的中间授权文件),最后利用加密算法对写入哈希值的中间授权文件进行加密14-4b,得到授权文件。license生成服务将授权文件发送给license主控服务,以使license主控服务配置授权文件14-5,从而根据授权文件为服务做授权。license主控服务监听业务节点的授权需求14-6,如果有授权需求,则先询问license生成服务授权文件是否有更新14-7。当授权文件有更新时,license主控服务从license生成服务得到最新的授权文件(更新授权文件),然后从最新的授权文件中得到授权内容,和中间授权文件的哈希值,并对授权内容做哈希运算,将哈希运算得到的哈希值(待验证哈希值)与中间授权文件的哈希值进行比较,以检查最新的授权文件是否被篡改14-8。当没有被篡改时,读取授权信息(授权内容),查看业务限制数据14-9(微服务平台上可以实施的微服务的类别和微服务的数量),比较业务限制数据与授权需求,返回授权判断信息14-10(业务节点授权信息)。在结束对业务节点的授权之后,判断是否还有监听其他业务节点的授权需求,若是则进入监听业务节点的授权需求14-6的过程,若否则结束14-11该流程。当授权文件没有更新时,则对授权文件进行解密14-12,检验授权文件是否有效14-13,在授权文件有效时,检测业务节点是否已经授权,检查业务限制数据,最后返回授权判断信息(业务节点授权信息)并更新授权状态14-14,并继续进入监听业务节点的授权需求14-6的过程,若是授权文件无效,则返回错误,记录出错信息14-15,并结束14-11该流程。
通过上述方式,license生成服务先生成针对license主控服务的授权文件,然后使得license主控服务根据该授权文件对微平台服务的各个微服务、以及实施各个微服务的业务节点进行授权,提高了微服务平台授权的可扩展度和已部署度。
下面继续说明本发明实施例提供的主控装置255的实施为软件模块的示例性结构,在一些实施例中,如图2所示,存储在第一存储器250的主控装置255中的软件模块可以包括:
信息生成模块2551,用于获取微服务主控平台的设备标识信息和微服务标识信息,并根据所述设备标识信息和所述微服务标识信息,生成主控服务信息;
第一发送模块2552,用于将所述主控服务信息发送给微服务授权验证平台,以使所述微服务授权验证平台根据所述主控服务信息生成授权文件;
第一接收模块2553,用于接收所述微服务授权验证平台返回的授权文件,以利用所述授权文件对各个微服务进行授权;接收至少一个业务节点发送的至少一个业务需求信息;其中,所述至少一个业务需求信息中携带有与其一一对应的所述至少一个业务节点待授权的微服务;
授权模块2554,用于对比所述至少一个业务需求信息是否超出所述授权文件的范围,以分别针对所述至少一个业务需求信息进行授权处理,返回至少一个业务节点各自对应的业务节点授权信息,完成针对所述各个微服务的授权。
在本发明的一些实施例中,所述主控装置255还包括:有效验证模块2555;
所述有效验证模块2555,用于对所述授权文件进行解密,得到解密文件信息;从所述解密文件信息中提取出检验标识信息;所述检验标识信息表征所述授权文件中的所述微服务主控平台的设备标识信息;将所述设备标识信息和所述检验标识信息进行比对,得到所述检验结果;
相应的,所述第一接收模块2553,用于当所述检验结果表征所述授权文件有效时,收至少一个业务节点发送的至少一个业务需求信息。
在本发明的一些实施例中,所述有效验证模块2555,具体用于当所述设备标识信息和所述检验标识信息相同时,所述检验结果表征所述授权文件有效;当所述设备标识信息和所述检验标识信息不同时,所述检验结果表征所述授权文件无效。
在本发明的一些实施例中,所述有效验证模块2555,具体还用于从所述解密文件信息中查找出中间授权文件的哈希值;所述中间授权文件的哈希值是由所述微服务授权验证平台生成的;从所述解密文件信息中提取出中间授权文件,并对所述中间授权文件进行哈希运算,得到待验证哈希值;比较所述中间授权文件的哈希值和所述待验证哈希值,得到哈希值比较结果;所述哈希值比较结果用于说明所述中间授权文件是否被篡改。
在本发明的一些实施例中,所述第一发送模块2552,具体用于将所述主控服务信息发送给第三方设备;通过所述第三方设备,将所述主控服务信息发送给所述微服务授权验证平台。
在本发明的一些实施例中,主控装置255还包括:第一获取模块2556和呈现模块2557;
所述第一获取模块2556,用于获取配置资源数据;所述配置资源数据是各个微服务已经占用的硬件资源的数据和软件资源的数据;
所述呈现模块2557,用于将所述配置资源数据呈现在显示界面上。
在本发明的一些实施例中,所述第一发送模块2552,还用于向所述微服务授权验证平台发送更新授权文件询问信息;所述更新授权文件询问信息用于查询授权文件是否有更新;
所述第一接收模块2553,还用于接收所述微服务授权验证平台发送的更新授权文件;所述更新授权文件是由所述微服务授权验证平台根据所述更新授权文件询问信息查询出的;
相应的,所述授权模块2554,还用于对比所述至少一个业务需求信息是否超出所述更新授权文件的范围,以分别针对所述至少一个业务需求信息进行授权处理,返回至少一个业务节点各自对应的业务节点授权信息,完成针对各个微服务的授权。
下面继续说明本发明实施例提供的授权验证装置455的实施为软件模块的示例性结构,在一些实施例中,如图3所示,存储在第二存储器450的授权验证装置455中的软件模块可以包括:
第二接收模块4551,用于接收微服务主控平台发送的主控服务信息;所述主控服务信息表征待授权的所述微服务主控平台对应的身份相关信息;
提取模块4552,根据所述主控服务信息提取出微服务部署信息;所述微服务部署信息为已约定的微服务相关信息;
授权文件生成模块4553,利用所述微服务部署信息生成授权文件;所述授权文件用于对各个微服务进行授权;
第二发送模块4554,将所述授权文件发送给所述微服务主控平台,以使所述微服务主控平台通过对比接收到的至少一个业务需求信息是否超出所述授权文件的范围,以完成针对各个微服务的授权。
在本发明的一些实施例中,所述微服务部署信息包括:检验标识信息和授权内容;所述授权文件生成模块4553,具体用于利用所述检验标识信息和所述授权内容,组成中间授权文件;其中,所述授权内容指定了授权的微服务的类别和微服务的数量;对所述中间授权文件进行加密,得到所述授权文件。
在本发明的一些实施例中,所述授权文件生成模块4553,还用于对所述中间授权文件进行哈希运算,得到所述中间授权文件的哈希值;将所述中间授权文件的哈希值写入至所述中间授权文件中,得到修改后的中间授权文件;对所述修改后的中间授权文件进行加密,得到所述授权文件。
在本发明的一些实施例中,所述提取模块4552,具体用于对所述主控服务信息进行解析,得到所述微服务标识信息和所述微服务主控平台的设备标识信息;
利用所述微服务标识信息和所述设备标识信息,从约定信息集合中匹配出所述预设约定信息;从所述预设约定信息中读取出所述微服务部署信息。
在本发明的一些实施例中,所述第一发送模块4554,具体用于将所述授权文件发送给第三方设备;通过所述第三方设备,将所述授权文件发送给所述微服务主控平台。
在本发明的一些实施例中,所述授权验证装置455还包括:第二获取模块4555;
所述第二接收模块4551,还用于接收所述微服务主控平台发送的更新授权文件询问信息;所述更新授权文件询问信息中包含有所述授权文件的版本信息;
所述第二获取模块4555,用于获取所述授权文件的当前版本信息;当所述当前版本信息高于所述授权文件的版本信息时,获取所述当前版本信息对应的当前授权文件,作为更新授权文件;
所述第二发送模块4554,还用于将所述更新授权文件发送给所述微服务主控平台。
下面继续说明本发明实施例提供的业务装置555的实施为软件模块的示例性结构,在一些实施例中,如图4所示,存储在第三存储器550的业务装置555中的软件模块可以包括:
业务需求生成模块5551,当接收到微服务请求时,根据所述微服务请求生成业务需求信息;
第三发送模块5552,用于将业务需求信息发送给微服务主控平台;
第三接收模块5553,用于接收所述微服务主控平台返回的业务节点授权信息;所述业务节点授权信息是所述微服务主控平台基于所述业务需求信息确定的。
微服务实现模块5554,基于所述业务节点授权信息,实现微服务。
本发明实施例提供一种存储有可执行指令的存储介质,其中存储有可执行微服务授权指令,当可执行微服务授权指令被第一处理器、第二处理器或第三处理器执行时,将引起第一处理器、第二处理器或第三处理器执行本发明实施例提供的微服务授权方法,例如,如图5、图9、图12至图14示出的方法。
在一些实施例中,存储介质可以是fram、rom、prom、eprom、eeprom、闪存、磁表面存储器、光盘、或cd-rom等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
在一些实施例中,可执行微服务授权指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
作为示例,可执行微服务平台授权指令可以但不一定对应于文件系统中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(html,hypertextmarkuplanguage)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。
作为示例,可执行微服务授权指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。
以上所述,仅为本发明的实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本发明的保护范围之内。
1.一种微服务授权方法,其特征在于,包括:
获取微服务主控平台的设备标识信息和微服务标识信息,并根据所述设备标识信息和所述微服务标识信息,生成主控服务信息;
将所述主控服务信息发送给微服务授权验证平台,以使得所述微服务授权验证平台根据所述主控服务信息生成授权文件;
接收所述微服务授权验证平台返回的授权文件,以利用所述授权文件对各个微服务进行授权;
接收至少一个业务节点发送的至少一个业务需求信息;其中,所述至少一个业务需求信息中携带有与其一一对应的所述至少一个业务节点待授权的微服务;
对比所述至少一个业务需求信息是否超出所述授权文件的范围,以分别针对所述至少一个业务需求信息进行授权处理,返回至少一个业务节点各自对应的业务节点授权信息,完成针对所述各个微服务的授权。
2.根据权利要求1所述的方法,其特征在于,在所述接收所述微服务授权验证平台返回的授权文件之后,所述接收至少一个业务节点发送的至少一个业务需求信息之前,所述方法还包括:
对所述授权文件进行解密,得到解密文件信息;
从所述解密文件信息中提取出检验标识信息;所述检验标识信息表征所述授权文件中的所述微服务主控平台的设备标识信息;
将所述设备标识信息和所述检验标识信息进行比对,得到所述检验结果;
相应的,所述接收至少一个业务节点发送的至少一个业务需求信息,包括:
当所述检验结果表征所述授权文件有效时,接收至少一个业务节点发送的至少一个业务需求信息。
3.根据权利要求2所述的方法,其特征在于,所述将所述设备标识信息和所述检验标识信息进行比较,得到所述检验结果,包括:
当所述设备标识信息和所述检验标识信息相同时,所述检验结果表征所述授权文件有效;
当所述设备标识信息和所述检验标识信息不同时,所述检验结果表征所述授权文件无效。
4.根据权利要求2所述的方法,其特征在于,在所述对所述授权文件进行解密,得到解密文件信息之后,所述从所述解密文件信息中提取出检验标识信息之前,所述方法还包括:
从所述解密文件信息中查找出中间授权文件的哈希值;所述中间授权文件的哈希值是由所述微服务授权验证平台生成的;
从所述解密文件信息中提取出中间授权文件,并对所述中间授权文件进行哈希运算,得到待验证哈希值;
比较所述中间授权文件的哈希值和所述待验证哈希值,得到哈希值比较结果;所述哈希值比较结果用于说明所述中间授权文件是否被篡改。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述将所述主控服务信息发送给微服务授权验证平台,包括:
将所述主控服务信息发送给第三方设备;
通过所述第三方设备,将所述主控服务信息发送给所述微服务授权验证平台。
6.根据权利要求1所述的方法,在所述接收至少一个业务节点发送的至少一个业务需求信息之后,所述对比所述至少一个业务需求信息是否超出所述授权文件的范围,以分别针对所述至少一个业务需求信息进行授权处理,返回至少一个业务节点各自对应的业务节点授权信息,完成针对各个微服务的授权之前,所述方法还包括:
向所述微服务授权验证平台发送更新授权文件询问信息;所述更新授权文件询问信息用于查询授权文件是否有更新;
接收所述微服务授权验证平台发送的更新授权文件;所述更新授权文件是由所述微服务授权验证平台根据所述更新授权文件询问信息查询出的;
相应的,所述对比所述至少一个业务需求信息是否超出所述授权文件的范围,以分别针对所述至少一个业务需求信息进行授权处理,返回至少一个业务节点各自对应的业务节点授权信息,完成针对各个微服务的授权,包括:
对比所述至少一个业务需求信息是否超出所述更新授权文件的范围,以分别针对所述至少一个业务需求信息进行授权处理,返回至少一个业务节点各自对应的业务节点授权信息,完成针对各个微服务的授权。
7.一种微服务授权方法,其特征在于,包括:
接收微服务主控平台发送的主控服务信息;所述主控服务信息表征待授权的所述微服务主控平台对应的身份相关信息;
根据所述主控服务信息,从预设约定信息中提取出微服务部署信息;所述微服务部署信息为已约定的微服务相关信息;
利用所述微服务部署信息生成授权文件;所述授权文件用于对各个微服务进行授权;
将所述授权文件发送给所述微服务主控平台,以使所述微服务主控平台通过对比接收到的至少一个业务需求信息是否超出所述授权文件的范围,以完成针对各个微服务的授权。
8.根据权利要求7所述的方法,其特征在于,所述微服务部署信息包括:检验标识信息和授权内容;所述利用所述微服务部署信息生成授权文件,包括:
利用所述检验标识信息和所述授权内容,组成中间授权文件;其中,所述授权内容指定了授权的微服务的类别和微服务的数量;
对所述中间授权文件进行加密,得到所述授权文件。
9.根据权利要求8所述的方法,其特征在于,在所述利用所述检验标识信息和所述授权内容,组成中间授权文件之后,所述对所述中间授权文件进行加密,得到所述授权文件之前,所述方法还包括:
对所述中间授权文件进行哈希运算,得到所述中间授权文件的哈希值;
将所述中间授权文件的哈希值写入至所述中间授权文件中,得到修改后的中间授权文件;
相应的,所述对所述中间授权文件进行加密,得到所述授权文件,包括:
对所述修改后的中间授权文件进行加密,得到所述授权文件。
10.根据权利要求7至9任一项所述的方法,其特征在于,所述根据所述主控服务信息,从预设约定信息中提取出微服务部署信息,包括:
对所述主控服务信息进行解析,得到所述微服务标识信息和所述微服务主控平台的设备标识信息;
利用所述微服务标识信息和所述设备标识信息,从约定信息集合中匹配出所述预设约定信息;
从所述预设约定信息中读取出所述微服务部署信息。
11.根据权利要求7所述的方法,其特征在于,所述将所述授权文件发送给所述微服务主控平台,包括:
将所述授权文件发送给第三方设备;
通过所述第三方设备,将所述授权文件发送给所述微服务主控平台。
12.根据权利要求7所述的方法,其特征在于,在所述将所述授权文件发送给所述微服务主控平台,以使所述微服务主控平台通过对比接收到的至少一个业务需求信息是否超出所述授权文件的范围,以完成针对各个微服务的授权之后,所述方法还包括:
接收所述微服务主控平台发送的更新授权文件询问信息;所述更新授权文件询问信息中包含有所述授权文件的版本信息;
获取所述授权文件对应的当前版本信息;
当所述当前版本信息高于所述授权文件的版本信息时,获取所述当前版本信息对应的当前授权文件,作为更新授权文件;
将所述更新授权文件发送给所述微服务主控平台。
13.一种微服务主控平台,其特征在于,包括:
第一存储器,用于存储可执行微服务授权指令;
第一处理器,用于执行所述第一存储器中存储的可执行微服务授权指令时,实现权利要求1至6任一项所述的方法。
14.一种微服务授权验证平台,其特征在于,包括:
第二存储器,用于存储可执行微服务授权指令;
第二处理器,用于执行所述第二存储器中存储的可执行微服务授权指令时,实现权利要求7至12任一项所述的方法。
15.一种存储介质,其特征在于,存储有可执行微服务授权指令,用于引起第一处理器执行时,实现权利要求1至6任一项所述的方法,或者用于引起第二处理器执行时,实现权利要求7至12任一项所述的方法。
技术总结