掌桥专利:专业的专利平台
掌桥专利
首页

一种微服务认证系统和方法

文献发布时间:2024-01-17 01:13:28


一种微服务认证系统和方法

技术领域

本发明属于软件技术领域,尤其涉及一种微服务认证系统和方法。

背景技术

微服务是一种开发软件的架构方法,其中软件由通过明确定义的应用程序接口进行通信的小型独立服务组成。微服务架构使应用程序更易于扩展和更快地开发,从而加速创新并缩短新功能的上市时间。

微服务架构可以融合不同类型的编写语言和编写风格,可以择优构建软件或程序,有利于提高软件、程序的功能性,且已完成构建的微服务具备通用性和复用性,提高应用率并降低开发成本。

随着微服务架构的流行,越来越多的应用基于微服务架构设计和实现,同时带来了新的问题,暨在传统单体应用架构中,认证和授权都在应用自身完成。但对于微服务架构,如何避免在各个微服务中重复实现权限管理功能的情况下,能更优雅的实现复杂微服务交互架构下的权限认证和授权,需要进一步改进。

发明内容

为了解决或者改善上述问题,本发明提供了一种微服务认证系统和方法,具体技术方案如下:

本发明提供一种微服务认证系统,包括:第一模块,用于实现认证微服务;第二模块,用于实现服务注册微服务;第三模块,用于实现反向代理配置微服务;第四模块,用于实现RBAC控制注册微服务;所述第一模块、所述第二模块、所述第三模块和所述第四模块相互独立。

优选的,所述第一模块接受反向代理工具发送的包括访问URL、请求参数和用户会话Token的请求;根据用户定义规则判断所述请求是否合法,并将认证结果反馈回所述反向代理工具。

优选的,所述第二模块与第三方微服务进行权限对接,并注册所述第三方微服务清单,以实现所述第三方微服务的认证托管和集中配置。

优选的,所述第三模块适配指定的反向代理工具,并执行转发认证配置操作,以实现所述反向代理工具将认证流量转发至所述微服务认证系统;

将所述微服务认证系统的反馈结果进行后续转发操作。

优选的,所述第四模块维护已注册信息和对应的可授权访问的第三方微服务清单列表;其中,所述已注册信息包括组织机构、角色和用户信息。

本发明提供一种微服务认证方法,适用于上述系统,包括:通过所述第一模块实现认证微服务;通过所述第二模块实现服务注册微服务;通过所述第三模块实现反向代理配置微服务;通过所述第四模块实现RBAC控制注册微服务。

优选的,方法包括:通过所述第一模块接受反向代理工具发送的包括访问URL、请求参数和用户会话Token的请求;根据用户定义规则判断所述请求是否合法,并将认证结果反馈回所述反向代理工具。

优选的,方法包括:通过所述第二模块与第三方微服务进行权限对接,并注册所述第三方微服务清单,以实现所述第三方微服务的认证托管和集中配置。

优选的,方法包括:通过所述第三模块适配指定的反向代理工具,并执行转发认证配置操作,以实现所述反向代理工具将认证流量转发至所述微服务认证系统;将所述微服务认证系统的反馈结果进行后续转发操作。

优选的,方法包括:通过所述第四模块维护已注册信息和对应的可授权访问的第三方微服务清单列表;其中,所述已注册信息包括组织机构、角色和用户信息。

本发明的有益效果为:通过第一模块实现认证微服务,能确保微服务的接入的安全性;通过第二模块实现服务注册微服务,能够正式认证微服务以便于后续的交互;通过第三模块实现反向代理配置微服务,能够建立相互的连接关系;通过第四模块实现RBAC控制注册微服务,能够明确访问权限,提高整体的安全性。

附图说明

图1是根据本发明的微服务认证系统的示意图;

图2是根据本发明的微服务认证方法的示意图。

主要附图标记说明:

1-第一模块,2-第二模块,3-第三模块,4-第四模块。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。

还应当理解,在本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。

还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。

为了解决或者改善对背景所提出的问题,本发明提供如图1所示的一种微服务认证系统,包括:第一模块1,用于实现认证微服务;第二模块2,用于实现服务注册微服务;第三模块3,用于实现反向代理配置微服务;第四模块4,用于实现RBAC控制注册微服务;所述第一模块1、所述第二模块2、所述第三模块3和所述第四模块4相互独立。

本发明提供一种可兼容多种反向代理工具的微服务转发认证系统,系统包括多个独立运行的微服务模块,其功能分别为:

认证微服务,用于接受反向代理工具发送的访问URL、请求参数和用户会话Token,然后结合用户定义规则,判断该请求是否合法,并反馈认证结果给反向代理工具尽心下一步操作。

服务注册微服务,用于第三方微服务与本认证系统的权限对接,将第三方微服务系统服务清单注册于本系统,实现第三方微服务在本系统的认证托管和集中配置。

反向代理配置微服务,用于适配市面上主流的反向代理工具的转发认证配置操作,实现反向代理工具将认证流量转发至本系统,并接收本系统反馈的结果,进行后续转发操作。

RBAC控制注册微服务,用于维护在本系统中注册的组织机构、角色和用户信息,并维护这些信息在本系统中可授权访问的第三方微服务清单列表。RBAC(Role-BasedAccessControl),基于角色的访问控制。

本发明实现与本系统对接后的第三方微服务系统无须进行改造,即可以统一的方式对服务消费用户提供附带权限认证、访问审计、黑白名单等微服务标准化能力。微服务转发认证系统以集中管控、分布式执行为原则,可以打造强大的微服务基础支撑。

所述第一模块接受反向代理工具发送的包括访问URL、请求参数和用户会话Token的请求;根据用户定义规则判断所述请求是否合法,并将认证结果反馈回所述反向代理工具。

所述第二模块与第三方微服务进行权限对接,并注册所述第三方微服务清单,以实现所述第三方微服务的认证托管和集中配置。

所述第三模块适配指定的反向代理工具,并执行转发认证配置操作,以实现所述反向代理工具将认证流量转发至所述微服务认证系统。

所述第四模块维护已注册信息和对应的可授权访问的第三方微服务清单列表;其中,所述已注册信息包括组织机构、角色和用户信息。

本发明提供如图2所示一种微服务认证方法,适用于上述系统,包括:S1、通过所述第一模块实现认证微服务;S2、通过所述第二模块实现服务注册微服务;S3、通过所述第三模块实现反向代理配置微服务;S4、通过所述第四模块实现RBAC控制注册微服务。

方法提供多种服务:

认证微服务,用于接受反向代理工具发送的访问URL、请求参数和用户会话Token,然后结合用户定义规则,判断该请求是否合法,并反馈认证结果给反向代理工具尽心下一步操作。

服务注册微服务,用于第三方微服务与本认证系统的权限对接,将第三方微服务系统服务清单注册于本系统,实现第三方微服务在本系统的认证托管和集中配置。

反向代理配置微服务,用于适配市面上主流的反向代理工具的转发认证配置操作,实现反向代理工具将认证流量转发至本系统,并接收本系统反馈的结果,进行后续转发操作。

RBAC控制注册微服务,用于维护在本系统中注册的组织机构、角色和用户信息,并维护这些信息在本系统中可授权访问的第三方微服务清单列表。RBAC(Role-BasedAccessControl),基于角色的访问控制。

本发明实现与本系统对接后的第三方微服务系统无须进行改造,即可以统一的方式对服务消费用户提供附带权限认证、访问审计、黑白名单等微服务标准化能力。微服务转发认证系统以集中管控、分布式执行为原则,可以打造强大的微服务基础支撑。

方法包括:通过所述第一模块接受反向代理工具发送的包括访问URL、请求参数和用户会话Token的请求;根据用户定义规则判断所述请求是否合法,并将认证结果反馈回所述反向代理工具。

方法包括:通过所述第二模块与第三方微服务进行权限对接,并注册所述第三方微服务清单,以实现所述第三方微服务的认证托管和集中配置。

方法包括:通过所述第三模块适配指定的反向代理工具,并执行转发认证配置操作,以实现所述反向代理工具将认证流量转发至所述微服务认证系统;将所述微服务认证系统的反馈结果进行后续转发操作。

方法包括:通过所述第四模块维护已注册信息和对应的可授权访问的第三方微服务清单列表;其中,所述已注册信息包括组织机构、角色和用户信息。

本领域普通技术人员可以意识到,结合本实施例中所公开的实施例描述的各示例的单元,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

在本申请所提供的实施例中,应该理解到,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元可结合为一个单元,一个单元可拆分为多个单元,或一些特征可以忽略等。

最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖在本发明的权利要求和说明书的范围当中。

相关技术
  • 统计身份认证及日志处理微服务系统及其实现方法
  • 一种基于调用图分析的微服务软件系统异常检测方法
  • 一种批量启动微服务的可视化系统及方法
  • 一种微服务系统中认证鉴权的方法和系统
  • 一种基于微服务架构的分布式系统权限认证系统及方法
技术分类

06120116067205