基于Kubernetes的应用认证代理方法及系统技术方案

技术编号:31615484 阅读:13 留言:0更新日期:2021-12-29 18:48
本发明专利技术提供基于Kubernetes的应用认证代理方法及系统,包括:确定接入Kubernetes云平台的新应用,由所述新应用的基本信息确定基础权限;基于基础权限启用认证代理,确定所述新应用的认证权限;待认证完成,对所述新应用进行鉴权,获得所述新应用的鉴权结果。本发明专利技术提出的基于Kubernetes的应用认证代理,能够直接对接IAM系统,方便应用接入Kubernetes云平台,认证代理为接入应用提供了灵活方便的统一认证和鉴权服务,支持高并发场景。支持高并发场景。支持高并发场景。

【技术实现步骤摘要】
基于Kubernetes的应用认证代理方法及系统


[0001]本专利技术涉及云计算
,尤其涉及基于Kubernetes的应用认证代理方法及系统。

技术介绍

[0002]在大数据应用场景中,随着Kubernetes云平台部署发布的应用越来越多,为统一管理用户信息,统一认证鉴权,云平台引入了统一身份管理和访问控制系统(IAM,Identity and Access Management,身份识别与访问代理)。各应用与IAM系统对接方案有如下几种:
[0003]1)各应用分别对接IAM系统;
[0004]2)使用认证代理,由认证代理与IAM系统对接。
[0005]第1)种方案需要协调各应用开发人员,调整修改认证模块,并会造成各应用与IAM系统耦合,使IAM系统升级维护困难。
[0006]目前,在Kubernetes云平台上,采用第2)种使用代理方式与IAM系统对接,可以使用Istio的认证模块,但该方案深度依赖于Istio,开发成本高、灵活性差,且部分认证方式暂未实现;也可以使用开源的认证代理,但开源的认证代理需要进行二次开发,且无法保障更新、修复进度。

技术实现思路

[0007]本专利技术提供基于Kubernetes的应用认证代理方法及系统,用以解决现有技术中存在的缺陷。
[0008]第一方面,本专利技术提供基于Kubernetes的应用认证代理方法,包括:
[0009]确定接入Kubernetes云平台的新应用,由所述新应用的基本信息确定基础权限;<br/>[0010]基于基础权限启用认证代理,确定所述新应用的认证权限;
[0011]待认证完成,对所述新应用进行鉴权,获得所述新应用的鉴权结果。
[0012]在一个实施例中,所述确定接入Kubernetes云平台的新应用,由所述新应用的基本信息确定基础权限,包括:
[0013]由身份识别与访问代理IAM系统管理员获取所述新应用的所述基本信息,所述IAM系统管理员基于所述基本信息配置所述基础权限。
[0014]在一个实施例中,所述基于基础权限启用认证代理,确定所述新应用的认证权限,包括:
[0015]确定所述新应用与IAM系统的认证接口,基于预设认证方式获得所述认证权限。
[0016]在一个实施例中,所述确定所述新应用与IAM系统的认证接口,基于预设认证方式获得所述认证权限,包括:
[0017]若检测到所述新应用的请求携带令牌,则调用所述IAM系统的令牌认证接口进行令牌校验鉴权;
[0018]若检测到所述新应用的请求携带密钥,则调用所述IAM系统的密钥认证接口进行
密钥校验鉴权;
[0019]若检测到所述新应用的请求携带用户名,则调用所述IAM系统的用户名接口进行用户名密码校验鉴权;
[0020]若任一认证模式认证失败,则向用户返回认证失败信息。
[0021]在一个实施例中,所述待认证完成,对所述新应用进行鉴权,获得所述新应用的鉴权结果,包括:
[0022]从所述新应用中获取请求资源信息,从Redis集群中获取所述请求资源信息中可访问的用户信息和角色配置;
[0023]解析认证过程中的令牌,获取所述用户信息和所述角色配置;
[0024]基于所述用户信息和所述角色配置,判断所述令牌是否具有访问权限,若判断具有权限,则为请求添加所述令牌,否则返回鉴权失败信息。
[0025]在一个实施例中,所述认证代理的权限配置是IAM系统通过kafka集群进行下发,并将所述权限配置存储在Redis集群中;
[0026]当所述认证代理启动时,通过所述kafka集群请求全量配置;
[0027]当所述IAM系统中权限变更,基于预设维度,通过所述kafka集群将变更的权限实时下发给所述认证代理;
[0028]通过所述IAM系统配置Istio服务网格,为所述认证代理提供流量管理,采集所述认证代理的流量数据;
[0029]由Prometheus汇总所述流量数据,实现对所述认证代理的流量监控和流量计费。
[0030]在一个实施例中,所述通过所述IAM系统配置Istio服务网格包括流量劫持、弹性伸缩、流量熔断和限流。
[0031]第二方面,本专利技术还提供基于Kubernetes的应用认证代理系统,包括:
[0032]确定模块,用于确定接入Kubernetes云平台的新应用,由所述新应用的基本信息确定基础权限;
[0033]认证模块,用于基于基础权限启用认证代理,确定所述新应用的认证权限;
[0034]鉴权模块,用于待认证完成,对所述新应用进行鉴权,获得所述新应用的鉴权结果。
[0035]第三方面,本专利技术还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述基于Kubernetes的应用认证代理方法的步骤。
[0036]第四方面,本专利技术还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述基于Kubernetes的应用认证代理方法的步骤。
[0037]本专利技术提供的基于Kubernetes的应用认证代理方法及系统,通过能够直接对接IAM系统,方便应用接入Kubernetes云平台,认证代理为接入应用提供了灵活方便的统一认证和鉴权服务,支持高并发场景。
附图说明
[0038]为了更清楚地说明本专利技术或现有技术中的技术方案,下面将对实施例或现有技术
描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0039]图1是本专利技术提供的基于Kubernetes的应用认证代理方法的流程示意图;
[0040]图2是本专利技术提供的基于Kubernetes的应用认证代理技术架构图;
[0041]图3是本专利技术提供的基于Kubernetes的应用认证代理系统架构图;
[0042]图4是本专利技术提供的基于Kubernetes的应用认证代理认证鉴权流程图;
[0043]图5是本专利技术提供的基于Kubernetes的应用认证代理权限配置同步时序图;
[0044]图6是本专利技术提供的基于Kubernetes的应用认证代理系统的结构示意图;
[0045]图7是本专利技术提供的电子设备的结构示意图。
具体实施方式
[0046]为使本专利技术的目的、技术方案和优点更加清楚,下面将结合本专利技术中的附图,对本专利技术中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0047]针对现有技术中存在的不足,本专利技术提出基于Kub本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.基于Kubernetes的应用认证代理方法,其特征在于,包括:确定接入Kubernetes云平台的新应用,由所述新应用的基本信息确定基础权限;基于基础权限启用认证代理,确定所述新应用的认证权限;待认证完成,对所述新应用进行鉴权,获得所述新应用的鉴权结果。2.根据权利要求1所述的基于Kubernetes的应用认证代理方法,其特征在于,所述确定接入Kubernetes云平台的新应用,由所述新应用的基本信息确定基础权限,包括:由身份识别与访问代理IAM系统管理员获取所述新应用的所述基本信息,所述IAM系统管理员基于所述基本信息配置所述基础权限。3.根据权利要求1所述的基于Kubernetes的应用认证代理方法,其特征在于,所述基于基础权限启用认证代理,确定所述新应用的认证权限,包括:确定所述新应用与IAM系统的认证接口,基于预设认证方式获得所述认证权限。4.根据权利要求3所述的基于Kubernetes的应用认证代理方法,其特征在于,所述确定所述新应用与IAM系统的认证接口,基于预设认证方式获得所述认证权限,包括:若检测到所述新应用的请求携带令牌,则调用所述IAM系统的令牌认证接口进行令牌校验鉴权;若检测到所述新应用的请求携带密钥,则调用所述IAM系统的密钥认证接口进行密钥校验鉴权;若检测到所述新应用的请求携带用户名,则调用所述IAM系统的用户名接口进行用户名密码校验鉴权;若任一认证模式认证失败,则向用户返回认证失败信息。5.根据权利要求1所述的基于Kubernetes的应用认证代理方法,其特征在于,所述待认证完成,对所述新应用进行鉴权,获得所述新应用的鉴权结果,包括:从所述新应用中获取请求资源信息,从Redis集群中获取所述请求资源信息中可访问的用户信息和角色配置;解析认证过程中的令牌,获取所述用户信息和所...

【专利技术属性】
技术研发人员:王永渤王慧王锟浦超
申请(专利权)人:浪潮软件科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1