一种基于ApachePulsar消息流的数据权限控制方法技术

技术编号:38925669 阅读:13 留言:0更新日期:2023-09-25 09:33
本发明专利技术提供一种基于ApachePulsar消息流的数据权限控制方法,包括以下步骤:S1、服务的建立,包括OAuth认证服务器与资源服务器的搭建;S2、用户信息,系统资源与Pulsar关系维护;S3、PulsarOAuth客户端维护,Pulsar OAuth认证只支持客户端认证的模式,需要在资源服务器中维护OAuth客户端并与用户资源实体建立关联关系;S4、动态授权与认证,通过自定义插件的方式实现Pulsar认证,与Pulsar自带的认证不冲突。本发明专利技术提供的一种基于ApachePulsar消息流的数据权限控制方法,将Pulsar消息流与业务系统的具体业务、业务用户进行强关联,并能动态控制授权与认证,该方法的主要策略是通过将授权/认证服务与业务逻辑进行绑定,维护业务用户与Pulsar命名空间、主题之间的绑定关系,动态控制主题的生产和消费权限。态控制主题的生产和消费权限。态控制主题的生产和消费权限。

【技术实现步骤摘要】
一种基于ApachePulsar消息流的数据权限控制方法


[0001]本专利技术涉及计算机领域,尤其涉及一种基于ApachePulsar消息流的数据权限控制方法。

技术介绍

[0002]计算机俗称电脑,是现代一种用于高速计算的电子计算机器,可以进行数值计算,又可以进行逻辑计算,还具有存储记忆功能。
[0003]目前的计算机可以应用不同的行业中,可以对不同行业中起到辅助的操作,其中计算机可以应用于Pulsar消息流平台数据访问授权与传输数据的过程。
[0004]Apache Pulsar是云原生分布式消息流平台,集消息、存储、轻量化函数式计算为一体,支持多租户、持久化存储、多机房跨区域数据复制,具有强一致性、高吞吐以及低延时的高可扩展流数据存储特性,内置诸多其他系统商业版本才有的特性,是云原生时代消息流数据实时传输、存储和计算的最佳解决方案。
[0005]OAuth是一个关于授权的开放网络标准,允许用户授权第三方应用访问他们存储在另外的服务提供者上的信息,而不需要将用户名和密码提供给第三方移动应用或分享他们数据的所有内容。
[0006]Pulsar自身提供了OAuth的集成认证功能,但是目前市场上的OAuth服务大多针对第三方应用,Pulsar作为被授权的客户端,拓展性较差,应用系统集成Pulsar时的数据权限绑定与数据安全性,权限控制的实时性都难以保证,同时,应用系统往往是强业务流程,强用户权限控制的,Pulsar的OAuth集成插件并不能做到与业务用户强相关。
[0007]因此,有必要提供一种基于ApachePulsar消息流的数据权限控制方法解决上述技术问题。

技术实现思路

[0008]本专利技术提供一种基于ApachePulsar消息流的数据权限控制方法,解决了Pulsar的OAuth集成插件并不能做到与业务用户强相关的问题。
[0009]为解决上述技术问题,本专利技术提供的一种基于ApachePulsar消息流的数据权限控制方法,包括以下步骤:
[0010]S1、服务的建立,包括OAuth认证服务器与资源服务器的搭建;
[0011]S2、用户信息,系统资源与Pulsar关系维护;
[0012]S3、Pulsar OAuth客户端维护,Pulsar OAuth认证只支持客户端认证的模式,需要在资源服务器中维护OAuth客户端并与用户资源实体建立关联关系;
[0013]S4、动态授权与认证,通过自定义插件的方式实现Pulsar认证,与Pulsar自带的认证不冲突。
[0014]优选的,所述S1中的认证服务器用户实现OAuth的登录,资源服务器用于维护用户逻辑关系。
[0015]优选的,所述S2中的系统资源处理包括以下步骤:
[0016]S21、在资源服务器中定义新的实体关联关系用于标记用户与资源;
[0017]S22、通常用户与资源为多对多的关系,因此每个用户与一类资源的关系将定义为一个实体。
[0018]优选的,所述S4中的客户端授权之后,用户便能够使用自己的认证凭证为Pulsar客户端进行认证,通常认证成功之后的token失效期很短,插件会自动进行token续期。
[0019]优选的,所述S4中的资源服务器一旦取消了用户与资源的绑定关系后,相应的凭证会被取消,用户启动的Pulsar客户端在很短时间内将无法再次连接。
[0020]优选的,所述S1中的服务器,在启动认证服务器,认证服务器对资源服务器和Pulsar暴露认证接口。
[0021]优选的,所述S1中的资源服务器,在启动资源服务器,资源服务器维护系统用户与业务。
[0022]优选的,所述资源服务器维护OAuth Client,将OAuth客户端的增、删、改、查放入资源服务器功能中,对OAuth标准的scope字段进行改造。
[0023]优选的,所述OAuth标准的scope字段进行改造,支持两种scope:produce与consume,这两个也是Pulsar判断topic读写权限的permission条件。
[0024]优选的,所述Pulsar服务端部署自定义OAuth服务端插件,用于与认证服务器交互,校验客户端请求头中携带的token。
[0025]与相关技术相比较,本专利技术提供的一种基于ApachePulsar消息流的数据权限控制方法具有如下有益效果:
[0026]本专利技术提供一种基于ApachePulsar消息流的数据权限控制方法,将Pulsar消息流与业务系统的具体业务、业务用户进行强关联,并能动态控制授权与认证,该方法的主要策略是通过将授权/认证服务与业务逻辑进行绑定,维护业务用户与Pulsar命名空间、主题之间的绑定关系,动态控制主题的生产和消费权限,从而可以使Pulsar的OAuth集成插件能做到与业务用户强相关。
附图说明
[0027]图1为本专利技术提供的一种基于ApachePulsar消息流的数据权限控制方法的一种较佳实施例的结构示意图。
具体实施方式
[0028]下面结合附图和实施方式对本专利技术作进一步说明。
[0029]请结合参阅图1,其中,图1为本专利技术提供的一种基于ApachePulsar消息流的数据权限控制方法的一种较佳实施例的结构示意图。一种基于ApachePulsar消息流的数据权限控制方法,包括以下步骤:
[0030]S1、服务的建立,包括OAuth认证服务器与资源服务器的搭建;
[0031]S2、用户信息,系统资源与Pulsar关系维护;
[0032]S3、Pulsar OAuth客户端维护,Pulsar OAuth认证只支持客户端认证的模式,需要在资源服务器中维护OAuth客户端并与用户资源实体建立关联关系;
[0033]S4、动态授权与认证,通过自定义插件的方式实现Pulsar认证,与Pulsar自带的认证不冲突。
[0034]服务的建立,通过向卫星接入节点发送请求消息;向地面基站发送消息;同步进行消息认证;
[0035]移动用户生成各项参数,然后向卫星接入节点发送包含参数的请求消息;所述参数具体包括椭圆曲线密码基本参数、秘密随机数、访间控制权限和时间戳;
[0036]卫星接入节点生成自己的随机数以及时间戳,并添加移动用户发送的部分参数,并向地面基站发送消息;
[0037]具体包括:地面基站获得卫星接入节点发送的消息,同步到地面基站区块链中,并向卫星接入节点发送通知消息;卫星接入节点收到通知消息后,从星间区块链中取出数据,并将数据以及.其他协商参数发送给移动用户;移动用户收到卫星接入节点发送的数据以后,完成验证,用户使用密钥解密,获得会话密钥,整体验证过程完成。
[0038]卫星接入节点向地面基站发送消息之前,要先从星间区块链中取出相关参数,对移动用户发送的消息进行比对,若比对不一致,则发送拒绝消息,中止进程。
[0039]地面基站获得卫星接入节点发送的本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于ApachePulsar消息流的数据权限控制方法,其特征在于,包括以下步骤:S1、服务的建立,包括OAuth认证服务器与资源服务器的搭建;S2、用户信息,系统资源与Pulsar关系维护;S3、PulsarOAuth客户端维护,PulsarOAuth认证只支持客户端认证的模式,需要在资源服务器中维护OAuth客户端并与用户资源实体建立关联关系;S4、动态授权与认证,通过自定义插件的方式实现Pulsar认证,与Pulsar自带的认证不冲突。2.根据权利要求1所述的基于ApachePulsar消息流的数据权限控制方法,其特征在于,所述S1中的认证服务器用户实现OAuth的登录,资源服务器用于维护用户逻辑关系。3.根据权利要求1所述的基于ApachePulsar消息流的数据权限控制方法,其特征在于,所述S2中的系统资源处理包括以下步骤:S21、在资源服务器中定义新的实体关联关系用于标记用户与资源;S22、通常用户与资源为多对多的关系,因此每个用户与一类资源的关系将定义为一个实体。4.根据权利要求1所述的基于ApachePulsar消息流的数据权限控制方法,其特征在于,所述S4中的客户端授权之后,用户便能够使用自己的认证凭证为Pulsar客户端进行认证,通常认证成功之后的token失效期很短,插件会自动进行token续期。5.根据权利要求4所述的基于ApachePulsar消息流的数...

【专利技术属性】
技术研发人员:郑超王鑫段冬梅雷吉蒙上官燕飞刘畅
申请(专利权)人:积至海南信息技术有限公司
类型:发明
国别省市:

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

1