[发明专利]基于区块链的微服务间访问控制策略自动生成方法和系统在审
申请号: | 202210264404.6 | 申请日: | 2022-03-17 |
公开(公告)号: | CN114595455A | 公开(公告)日: | 2022-06-07 |
发明(设计)人: | 李雅洁;习宁;曾辉祥;覃伯君;沈玉龙;李维辉;刘琦 | 申请(专利权)人: | 西安电子科技大学 |
主分类号: | G06F21/56 | 分类号: | G06F21/56;G06F21/64 |
代理公司: | 西安通大专利代理有限责任公司 61200 | 代理人: | 姚咏华 |
地址: | 710071 陕*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 区块 微服 访问 控制 策略 自动 生成 方法 系统 | ||
本发明公开了一种基于区块链的微服务间访问控制策略自动生成方法和系统,本发明的方法结合基于请求拓扑图和权限关系图的访问控制策略生成管理机制,实现了与微服务管理平台或框架分离的服务间调用的权限决策机制,实现了在服务部署前对相关调用服务的权限审核,与服务平台分离式权限决策,有效避免了平台以及管理人员带来的服务风险。本发明中区块链的使用,为访问控制的策略以及相关服务的信息给予机密性和不可篡改性的保证。
技术领域
本发明属于网络安全领域,具体涉及一种基于区块链的微服务间访问控制策略自动生成方法和系统。
背景技术
微服务是一种云原生应用也就是面向“云”而设计的应用,在使用云原生技术后,开发者无需考虑底层的技术实现,可以充分发挥云平台的弹性和分布式优势,实现快速部署、按需伸缩、不停机交付等。它提倡将单一应用程序划分成一组小的服务,服务之间互相协调、互相配合,为用户提供最终价值。每个服务运行在其独立的进程中,服务于服务间采用轻量级的通信机制互相沟通。它将一个应用程序拆分为多个在不同机器(或虚拟机和容器)上运行的微服务。每个微服务都可以独立开发、部署、升级和扩展。通过轻量级网络API调用,可以将多个服务组合为服务链,以实现复杂的功能。微服务显著提高了云应用程序的灵活性。
根据调查,微服务大多都部署在第三方容器中,给服务部署和调用带来风险,当微服务协同工作以完成复杂的功能时,它们自然的相互信任使得整个应用程序容易受到单个受损服务的攻击。服务间访问控制机制就显得尤为重要。
在现有服务间访问控制机制中,有在现有文档的基础上利用NLP技术来实现,但由于NLP的限制,这些方法通常是粗粒度和不完整的;再有基于用收集的日志或历史数据从流量中推断规则标准和策略结构。它们的有效性取决于跟踪的粒度和完整性,这很难保证。此外,它们要求应用程序提前运行以收集数据,这可能会导致攻击窗口;通过建模的方法生成相应的安全策略,但是建模过程耗时,不适合规模小,复杂度低且灵活性较强的微服务。
发明内容
本发明的目的在于克服上述不足,提供一种基于区块链的微服务间访问控制策略自动生成方法和系统,解决微服务在由第三方平台管理时,给服务间调用带来的风险,以及微服务间调用权限判定问题,避免服务遭到恶意微服务攻击和感染。
为了达到上述目的,一种基于区块链的微服务间访问控制策略自动生成方法,包括以下步骤:
S1,将新增源代码进行提取;
S2,对源代码进行静态分析,并提取出服务请求列表清单,生成请求拓扑图;
S3,根据请求列表清单以及存储的各服务厂商访问权限白名单,生成对应微服务的权限关系图;
S4,将微服务的请求拓扑图和权限关系图进行对比决策,并产生决策结果;
S5,根据源代码和决策结果部署服务。
S1中,提取源代码的具体方法如下:
S11,确定新增源代码中包含的编程语言,选择对应语言的语料库;
S12,通过语料库中的语义模型对源代码中包含请求调用的语句进行标识。
S2中,提取服务请求列表清单的具体方法如下:
S21,根据语句进行标识生成静态分析结果;
S22,在静态分析结果的基础,获取与微服务调用相关代码的程序切片;
S23,结合程序切片和静态分析结果逆向溯源,生成请求被调用的微服务的列表清单。
S4中,进行对比决策的具体方法如下:
S41,根据白名单上的权限关系生成各微服务间调用权限图;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安电子科技大学,未经西安电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210264404.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:锂电池制造方法及锂电池
- 下一篇:一种物联网智能社区用门禁系统