1.本发明涉及一种面向多web微服务应用的管理系统,属于智能电网数字化微服务应用技术领域。
背景技术:
2.随着国网、南网数字化战略的深入和全球web微服务技术的兴起,依靠其良好的性能、近乎完美的大屏效果及便捷快速的开发方式等特点已经广泛应用于智能电网领域。但由于业务的繁多、架构的复杂、及安全要求高导致了微服务应用泛滥的情况出现。随着多厂家业务应用在平台上的部署这种现象越发明显,几乎影响到了线上业务的稳定性,同时多家上线的业务系统风格各异、监控方式多样,无法统一审计、很多时间都浪费在多个系统间的切换上,无法形成一套功能完整、人机交互页面风格统一的系统,导致
用户非常不满,微服务系统的治理迫在眉睫。
技术实现要素:
3.本发明的目的在于提出一种面向多web微服务应用的管理系统,通过微服务配置管理
模块实现多个web微服务应用的非嵌入式集成部署,达到统一管理、统一鉴权和进程统一监护的目的。
4.为达到上述目的,本发明采用的技术方案如下:本发明提供一种面向多web微服务应用的管理系统,包括:微服务配置管理模块用于对web微服务应用进行配置管理;单点登录身份鉴权模块用于对多web微服务应用进行统一鉴权;智能网关服务模块用于对微服务配置管理模块配置的数据缓存服务器和注册中心构建实时交互链路;以及对外部请求进行安全过滤;注册中心用于对web微服务应用进行身份注册,以及实时与智能网关服务模块进行交互。
5.进一步的,
所述微服务配置管理模块包括:系统管理员操作权限配置模块,用于对web微服务应用的菜单和功能、用户和角进行配置,进行角资源绑定以及进行用户授权;审核管理员操作权限配置模块,用于进行新建用户审核、角资源绑定审核和用户授权审核;审计管理员操作权限配置模块,用于进行日志规则设置、日志容量配置、以及日志查询与分析;数据缓存更新服务配置模块,用于基于第三方分布式缓存服务器,将配置信息缓存到数据缓存服务器。
6.进一步的,所述系统管理员操作权限配置模块具体用于,根据用户的组织关系,构建包括集团、公司、部门和小组的组织架构;;
根据用户所在的组织进行用户管理,包括配置用户类型、用户密码、绑定ukey、有效期、唤醒、锁定和解锁。
7.进一步的,所述系统管理员操作权限配置模块具体用于,对用户角进行管理,配置不同用户角权限互斥;所述用户角包括通用、业务、系统、审计、配置和审核。
8.进一步的,所述系统管理员操作权限配置模块具体用于,根据web微服务应用的类型进行微服务应用菜单配置和功能接口配置;对于web前端模块通过excel模板批量导入菜单,确定每条菜单的名称、角类型、层级关系、url、安全级别及启用状态;对于web后端模块通过excel模板批量导入功能接口,确定接口的名称、角类型、url安全级别及启用状态。
9.进一步的,所述系统管理员操作权限配置模块具体用于,将菜单、功能接口与角根据web微服务应用进行绑定,生成角资源绑定审批工单;进行用户与角实例绑定,生成用户授权审批工单。
10.进一步的,所述单点登录身份鉴权模块具体用于,采用根域名相同的token鉴权方式对多web微服务应用进行统一鉴权。
11.进一步的,所述智能网关服务模块具体用于,对用户请求进行安全过滤,访问数据缓存服务器进行鉴权;根据网关路由前缀访问注册中心获取节点ip地址进行微服务应用调用。
12.进一步的,所述注册中心具体用于,对web微服务应用通过sdk方式进行身份注册。
13.本发明的有益效果为:采用本发明微服务应用只需通过统一的sdk注册到注册中心,不需要在开发侧关注权限、角、用户、安全等非业务功能,通过微服务配置管理模块实现多个web微服务应用的非嵌入式集成部署,达到统一管理、统一鉴权和进程统一监护的目的,大大降低了代码开发难度、加快了业务应用上线的速度,更好的实现了不同厂家微服务应用在平台侧的规范性,从而达到微服务管理的目的。
附图说明
14.图1 为本发明实施例中多web微服务应用架构治理平台示意图;图2为本发明实施例中微服务配置管理模块架构;图3为本发明实施例中web微服务请求链路调用图;图4为本发明实施例中web微服务应用统一配置管理图。
具体实施方式
15.下面对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
16.实施例1
本实施例提供一种面向多web微服务应用的管理系统,参见图1,包括:微服务配置管理模块(dems)、单点登录身份鉴权模块(sso)、智能网关服务模块(gateway)和注册中心。
17.微服务配置管理模块(dems)用于,对web微服务应用进行统一配置管理。
18.单点登录身份鉴权模块(sso)用于,对多web微服务应用进行统一鉴权,采用同域token模式实现。
19.智能网关服务模块(gateway)用于,与数据缓存服务器和注册中心构建实时交互链路,对外部请求进行层层安全过滤、路由规则转发及日志获取。
20.注册中心用于,对web微服务应用进行身份注册,实时与智能网关服务交互,根据负载策略返回具体调用的节点服务。
21.作为一种优选的实施方式,参见图2,微服务配置管理模块(dems)包括:系统管理员操作权限配置模块、审核管理员操作权限配置模块、审计管理员操作权限配置模块和数据缓存更新服务配置模块。
22.系统管理员操作权限配置模块用于,根据规划的微服务应用标识与网关路由前缀进行微服务应用注册;根据用户的组织关系,构建集团、公司、部门、小组等组织架构关系;根据用户所在的组织进行用户管理,完善用户类型、用户密码、绑定ukey、有效期、唤醒、锁定、解锁等一系列关于账号安全的配置;对用户角进行管理,角类型分为通用、业务、系统、审计、配置、审核六大类,保证角类型间业务的互斥性;根据微服务应用的类型进行微服务应用菜单配置;例如如果是web前端模块,则进行菜单配置,可通过excel模板批量导入,确定每条菜单的名称、角类型、层级关系、url、安全级别及启用状态。
23.根据微服务应用的类型进行功能接口配置;例如如果是web后端模块,则进行功能接口的配置,可通过excel模板批量导入,确定节点的名称、角类型、url安全级别及启用状态。
24.将菜单、功能接口与角根据微服务应用进行绑定,可以根据不同的实例化角赋予不同的菜单和功能接口,生成角资源绑定审批工单,审核管理员登录系统审批通过后完成资源绑定。
25.根据用户的职责完成用户与角实例的绑定,并生成用户授权审批工单;审核管理员登录系统完成审批工作,审批通过后完成整个面向业务的微服务应用在平台侧的统一配置管理工作。
26.审核管理员操作权限配置模块用于,进行新建用户审核、资源绑定审核和用户授权审核。
27.审计管理员操作权限配置模块用于,进行日志规则设置、日志容量配置、以及日志查询与分析。
28.数据缓存更新服务配置模块用于,基于第三方分布式缓存服务器,把配置的网关前缀路由信息、以及前述所有的配置信息缓存到数据缓存服务器,保证配置数据与缓存数据的更新操作。
29.参见图4,本实施例中,微服务配置管理模块进行微服务应用配置过程为:判断微服务应用为web前端模块还是web后端模块;如果是web前端模块则通过excel模板批量导入菜单;如果是web后端模块则通过excel模板批量导入功能接口;将菜单、功能与角根据微服务应用进行资源角绑定,并由审核管理员审批;根据用户的组织关系,构建组织架构,以及根据用户所在的组织进行用户管理,完善用户账号安全的配置;资源角绑定审批通过后,进行用户与角实例绑定,并由审核管理员审批;用户绑定角审批通过后,完成了面向业务的微服务应用在平台侧的统一配置。
30.作为一种优选的实施方式,单点登录身份鉴权模块(sso)具体用于,采用根域名相同的多微服务应用token鉴权方式,用户登录成功获取token,token存放在浏览器localstorage中。后端token以ttl模式存放在数据缓存服务器中。
31.作为一种优选的实施方式,智能网关服务模块(gateway)具体用于,实时与数据缓存服务器和注册中心通信;根据前述的微服务应用菜单配置和功能接口配置日志等级与级别进行异步日志存储。
32.作为一种优选的实施方式,智能网关服务模块(gateway)具体用于,对用户请求进行层层安全过滤后,访问数据缓存服务器进行鉴权,鉴权通过后根据网关路由前缀访问注册中心获取节点ip地址进行微服务应用调用。
33.需要说明的是,所有的微服务应用都需要事先通过sdk注册到微服务注册中心,web前端可以通过rest方式进行注册或借助web后端工程通过sdk方式进行注册。
34.参见图3的用户请求调用链路,具体调用流程如下:1)用户发起请求,请求经过负载均衡器;2)负载均衡器根据负载均衡策略将用户请求路由到微服务网关集中的一个微服务网关节点;3)微服务网关从数据缓存服务器中获取用户配置的app路由信息和功能路由信息,按配置转发到具体的前端页面;4)前端页面请求后端数据,首先将转发请求到网关;5)网关通过数据缓存服务器获取后端服务集信息,按网关路由策略选择后端功能服务节点,功能服务节点查询数据后返回给前端页面供用户查看,完成整个调用流程。
35.本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
36.本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
37.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特
定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
38.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
39.最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求保护范围之内。
技术特征:
1.一种面向多web微服务应用的管理系统,其特征在于,包括:微服务配置管理模块用于对web微服务应用进行配置管理;单点登录身份鉴权模块用于对多web微服务应用进行统一鉴权;智能网关服务模块用于对微服务配置管理模块配置的数据缓存服务器和注册中心构建实时交互链路;以及对外部请求进行安全过滤;注册中心用于对web微服务应用进行身份注册,以及实时与智能网关服务模块进行交互。2.根据权利要求1所述的一种面向多web微服务应用的管理系统,其特征在于,所述微服务配置管理模块包括:系统管理员操作权限配置模块,用于对web微服务应用的菜单和功能、用户和角进行配置,进行角资源绑定以及进行用户授权;审核管理员操作权限配置模块,用于进行新建用户审核、角资源绑定审核和用户授权审核;审计管理员操作权限配置模块,用于进行日志规则设置、日志容量配置、以及日志查询与分析;数据缓存更新服务配置模块,用于基于第三方分布式缓存服务器,将配置信息缓存到数据缓存服务器。3.根据权利要求2所述的一种面向多web微服务应用的管理系统,其特征在于,所述系统管理员操作权限配置模块具体用于,根据用户的组织关系,构建包括集团、公司、部门和小组的组织架构;;根据用户所在的组织进行用户管理,包括配置用户类型、用户密码、绑定ukey、有效期、唤醒、锁定和解锁。4.根据权利要求3所述的一种面向多web微服务应用的管理系统,其特征在于,所述系统管理员操作权限配置模块具体用于,对用户角进行管理,配置不同用户角权限互斥;所述用户角包括通用、业务、系统、审计、配置和审核。5.根据权利要求4所述的一种面向多web微服务应用的管理系统,其特征在于,所述系统管理员操作权限配置模块具体用于,根据web微服务应用的类型进行微服务应用菜单配置和功能接口配置;对于web前端模块通过excel模板批量导入菜单,确定每条菜单的名称、角类型、层级关系、url、安全级别及启用状态;对于web后端模块通过excel模板批量导入功能接口,确定接口的名称、角类型、url安全级别及启用状态。6.根据权利要求5所述的一种面向多web微服务应用的管理系统,其特征在于,所述系统管理员操作权限配置模块具体用于,将菜单、功能接口与角根据web微服务应用进行绑定,生成角资源绑定审批工单;进行用户与角实例绑定,生成用户授权审批工单。7.根据权利要求1所述的一种面向多web微服务应用的管理系统,其特征在于,所述单点登录身份鉴权模块具体用于,
采用根域名相同的token鉴权方式对多web微服务应用进行统一鉴权。8.根据权利要求1所述的一种面向多web微服务应用的管理系统,其特征在于,所述智能网关服务模块具体用于,对用户请求进行安全过滤,访问数据缓存服务器进行鉴权;根据网关路由前缀访问注册中心获取节点ip地址进行微服务应用调用。9.根据权利要求1所述的一种面向多web微服务应用的管理系统,其特征在于,所述注册中心具体用于,对web微服务应用通过sdk方式进行身份注册。
技术总结
本发明公开了一种面向多web微服务的管理系统,该系统包括:微服务配置管理模块用于对web微服务应用进行配置管理;单点登录身份鉴权模块用于对多web微服务应用进行统一鉴权;智能网关服务模块用于对微服务配置管理模块配置的数据缓存服务器和注册中心构建实时交互链路;以及注册中心用于对web微服务应用进行身份注册。采用本发明微服务应用只需通过统一的SDK注册到注册中心,不需要在开发侧关注权限、角、用户、安全等非业务功能,通过微服务配置管理模块实现多个web微服务应用的非嵌入式集成部署,达到统一管理、统一鉴权和进程统一监护的目的,大大降低了代码开发难度、加快了业务应用上线的速度。快了业务应用上线的速度。快了业务应用上线的速度。
技术研发人员:
张晓瑞 纪陵 范仲鸣
受保护的技术使用者:
南京国电南自电网自动化有限公司
技术研发日:
2022.08.15
技术公布日:
2022/12/16