分布式应用权限校验方法及装置制造方法及图纸

技术编号:23512944 阅读:25 留言:0更新日期:2020-03-18 00:12
本发明专利技术提供了一种分布式应用权限校验方法及装置,其中该方法包括:接收用户发来的访问请求,根据访问请求确定用户的地址;根据用户的地址,确定用户是否在zookeeper的白名单中;若用户在zookeeper的白名单中,将访问请求转发至对应的业务微服务;若用户不在zookeeper的白名单中,根据用户的地址从zookeeper读取用户的权限数据,若根据用户的权限数据确定用户的地址合法,将访问请求转发至对应的业务微服务。该方法实现了不采用Redis数据库做缓存,直接将权限校验信息存储至zookeeper中,减少了中间件,提升了校验功能稳定性,降低异常风险可能性,提高了权限校验速度。

Method and device of distributed application authority verification

【技术实现步骤摘要】
分布式应用权限校验方法及装置
本专利技术涉及网络应用开发
,尤其涉及一种分布式应用权限校验方法及装置。
技术介绍
随着对产品性能和稳定性要求的提高,分布式应用逐渐替代了单应用系统,但目前的分布式应用的权限校验有如下问题:目前,基本都是把权限基础数据存到内存数据库中比如Redis数据库中,用户权限的变动需要单独的消息组件通知网关校验模块,校验模块从Redis数据库读取权限数据,反复访问不仅造成时间的浪费和异常的风险,还会因消息组件异常造成系统检验崩溃的风险,使得校验速度慢、风险高、稳定性差。
技术实现思路
本专利技术实施例提供一种分布式应用权限校验方法,用以提高权限校验速度、降低异常风险可能性、提高校验功能稳定性,该方法包括:接收用户发来的访问请求,根据所述访问请求确定用户的地址;根据用户的地址,确定用户是否在zookeeper的白名单中;若用户在zookeeper的白名单中,将所述访问请求转发至对应的业务微服务;若用户不在zookeeper的白名单中,根据用户的地址从zookeeper读取用户的权限数据,若根据用户的权限数据确定用户的地址合法,将所述访问请求转发至对应的业务微服务。本专利技术实施例还提供一种分布式应用权限校验装置,用以提高权限校验速度、降低异常风险可能性、提高校验功能稳定性,该装置包括:地址接收模块,用于接收用户发来的访问请求,根据所述访问请求确定用户的地址;白名单判断模块,用于根据用户的地址,确定用户是否在zookeeper的白名单中;白名单处理模块,用于若用户在zookeeper的白名单中,将所述访问请求转发至对应的业务微服务;权限判断模块,用于若用户不在zookeeper的白名单中,根据用户的地址从zookeeper读取用户的权限数据,根据用户的权限数据确定用户的地址是否合法;权限处理模块,用于若根据用户的权限数据确定用户的地址合法,将所述访问请求转发至对应的业务微服务。本专利技术实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述分布式应用权限校验方法。本专利技术实施例也提供一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述分布式应用权限校验方法的计算机程序。本专利技术实施例中,通过接收用户发来的访问请求,根据访问请求确定用户的地址;根据用户的地址,确定用户是否在zookeeper的白名单中;若用户在zookeeper的白名单中,将访问请求转发至对应的业务微服务;若用户不在zookeeper的白名单中,根据用户的地址从zookeeper读取用户的权限数据,若根据用户的权限数据确定用户的地址合法,将访问请求转发至对应的业务微服务;实现了不采用Redis数据库做缓存,直接将权限校验信息存储至zookeeper中,减少了中间件,提升了校验功能稳定性,降低异常风险可能性,提高了权限校验速度。附图说明为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例中分布式应用权限校验方法示意图。图2为本专利技术一具体实施例中分布式应用权限校验方法示意图。图3为本专利技术另一具体实施例中分布式应用权限校验方法示意图。图4为本专利技术实施例中分布式应用权限校验的一具体应用实施的示意图。图5为本专利技术实施例中分布式应用权限校验装置结构框图。图6为本专利技术一具体实施例中分布式应用权限校验装置结构框图。图7为本专利技术另一具体实施例中分布式应用权限校验装置结构框图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。为了解决使用Redis数据库做缓存的分布式应用权限校验速度慢、风险高、稳定性差的问题,本专利技术实施例提供了一种分布式应用权限校验方法,用以提高权限校验速度、降低异常风险可能性、提高校验功能稳定性,如图1所示,该方法包括:步骤101:接收用户发来的访问请求,根据访问请求确定用户的地址;步骤102:根据用户的地址,确定用户是否在zookeeper的白名单中;步骤103:若用户在zookeeper的白名单中,将访问请求转发至对应的业务微服务;步骤104:若用户不在zookeeper的白名单中,根据用户的地址从zookeeper读取用户的权限数据,若根据用户的权限数据确定用户的地址合法,将访问请求转发至对应的业务微服务。从图1可以看出,本专利技术实施例通过接收用户发来的访问请求,根据访问请求确定用户的地址;根据用户的地址,确定用户是否在zookeeper的白名单中;若用户在zookeeper的白名单中,将访问请求转发至对应的业务微服务;若用户不在zookeeper的白名单中,根据用户的地址从zookeeper读取用户的权限数据,若根据用户的权限数据确定用户的地址合法,将访问请求转发至对应的业务微服务;实现了不采用Redis数据库做缓存,直接将权限校验信息存储至zookeeper中,减少了中间件,提升了校验功能稳定性,降低异常风险可能性,提高了权限校验速度。其中,zookeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。zookeeper是一个为分布式应用提供一致性服务的软件,主要是用来解决分布式应用中经常遇到的一些数据管理问题,如:统一命名服务、状态同步服务、集群管理、分布式应用配置项的管理等。具体实施时,首先接收用户发来的访问请求,根据访问请求确定用户的地址。根据访问请求确定用户的地址后,根据用户的地址,确定用户是否在zookeeper的白名单中。若用户在zookeeper的白名单中,将访问请求转发至对应的业务微服务,权限校验成功。若用户不在zookeeper的白名单中,根据用户的地址从zookeeper读取用户的权限数据,若根据用户的权限数据确定用户的地址合法,将访问请求转发至对应的业务微服务,权限校验成功;若根据用户的权限数据确定用户的地址不合法,权限校验失败,拒绝用户访问,结束校验。其中,上述白名单是指可访问的用户地址集合名单,上述用户的权限数据存储在zookeeper中的用户节点中。故图2所示的本专利技术一具体实施例中的分布式应用权限校验方法,在图1的基础上还包括:步骤201:根据用户的地址在zookeeper中创建用户节点及白名单;步骤202:将用户本文档来自技高网...

【技术保护点】
1.一种分布式应用权限校验方法,其特征在于,包括:/n接收用户发来的访问请求,根据所述访问请求确定用户的地址;/n根据用户的地址,确定用户是否在zookeeper的白名单中;/n若用户在zookeeper的白名单中,将所述访问请求转发至对应的业务微服务;/n若用户不在zookeeper的白名单中,根据用户的地址从zookeeper读取用户的权限数据,若根据用户的权限数据确定用户的地址合法,将所述访问请求转发至对应的业务微服务。/n

【技术特征摘要】
1.一种分布式应用权限校验方法,其特征在于,包括:
接收用户发来的访问请求,根据所述访问请求确定用户的地址;
根据用户的地址,确定用户是否在zookeeper的白名单中;
若用户在zookeeper的白名单中,将所述访问请求转发至对应的业务微服务;
若用户不在zookeeper的白名单中,根据用户的地址从zookeeper读取用户的权限数据,若根据用户的权限数据确定用户的地址合法,将所述访问请求转发至对应的业务微服务。


2.如权利要求1所述的方法,其特征在于,还包括:
根据用户的地址在zookeeper中创建用户节点及白名单;
将用户的地址和权限数据加载至用户节点;
将可访问的用户地址集合加载至白名单。


3.如权利要求2所述的方法,其特征在于,还包括:
订阅zookeeper中的用户节点及白名单。


4.如权利要求1所述的方法,其特征在于,若用户不在zookeeper的白名单中,先根据用户的地址,确定用户是否在zookeeper的黑名单中;
若用户在zookeeper的黑名单中,拒绝用户访问;
若用户不在zookeeper的黑名单中,再根据用户的地址从zookeeper读取用户的权限数据。


5.如权利要求4所述的方法,其特征在于,还包括:
根据用户的地址在zookeeper中创建黑名单;
将不可访问的用户地址集合加载至黑名单。


6.如权利要求5所述的方法,其特征在于,还包括:
订阅zookeeper中的黑名单。


7.如权利要求1至6任一项所述的方法,其特征在于,还包括:
接收更新的用户权限数据;
将更新的用户权限数据存储至数据库;
将更新的用户权限数据存储至zookeeper。


8.一种分布式应用权限校验装置,其特征在于,包括:
地址接收模块...

【专利技术属性】
技术研发人员:王志坤孟金斗
申请(专利权)人:中盈优创资讯科技有限公司
类型:发明
国别省市:北京;11

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

1