一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于区块链的配置系统、智能合约及配置管理方法与流程

2021-12-15 02:19:00 来源:中国专利 TAG:


1.本发明是一种基于区块链的配置系统、智能合约及配置管理方法,具体涉及区块链技术领域。


背景技术:

2.应用程序在启动和运行的时候通常需要读取一些配置信息,比如数据库连接参数、日志级别、外部接口的链接等。配置信息是只读的程序变量,有多种加载方式,例如在程序中硬编码、静态配置文件、数据库等;同一份应用程序的代码,通过不同环境的参数配置,即可运行于不同的环境中。配置方法是一种统一管理应用程序配置的基础设施;配置方法独立于应用程序的运行,为用户对于不同应用程序、不同环境的配置管理提供统一的入口;配置方法通常采用集群或主从部署架构,降低单点故障的概率;结合堡垒机等基础设施,提供配置管理的细粒度权限控制和事后审计。
3.常见的配置方法,如zookeeper、consul、etcd等,虽然都采用了集群或主从部署的架构降低了单点故障的概率,但是仍然存在以下问题:
4.容灾率低,由于配置方法都是方法化部署,对于不可抗力导致的机房故障、网络故障、线路故障的容灾率过低;
5.事后审计通常无法挽回数据和业务上已经造成的损失,虽然可以通过堡垒机等解决方案,详细记录运维人员的操作日志,但也仅能实现事后审计和追溯,无法提前规避运维人员的作恶风险。
6.本发明旨在通过区块链技术解决上述痛点。


技术实现要素:

7.本发明的目的在于提供一种基于区块链的配置系统、智能合约及配置管理方法,以解决上述背景技术问题。
8.为实现上述目的,本发明提供如下技术方案:一种基于区块链的配置系统部署架构分为三层:上层为面向运维和审核人员的配置管理系统;中层为去中心化部署的区块链系统,不同的节点可以部署在不同的机房;底层为各应用程序,从区块链系统读取配置信息和监听配置变更。
9.一种基于区块链的配置管理系统的智能合约,部署在区块链上。
10.该智能合约包含以下核心部分:一、用户及权限管理;采用经典rbac(基于角色的权限控制)实现用户的角色和权限管理;
11.角色包含:管理员:拥有用户和权限管理的权限,与运维和审核权限互斥;
12.运维人员:拥有发起配置修改申请的权限,与审核权限互斥;
13.审核人员:拥有配置审核权限,与运维权限互斥;
14.审计人员:逻辑角色,不需要在此合约中配置,审计人员通过区块链即可查询到需要被审计的信息;
15.二、环境和配置管理;
16.运维人员可以自定义环境id、名称和描述,并在该环境下针对不同的应用创建配置信息;
17.配置的初始化和变更都需要经过审核;
18.配置初始化之后,由管理员修改该配置的变更是否需要审核、审核人员列表及审核通过的门限;
19.应用程序根据环境id、应用程序标识等信息获取到指定的配置信息。
20.三、审核及审计;
21.审核人员通过审核接口获取待审核的配置变更申请、发送审核结果;
22.审计人员通过审计接口查询需要被审计的配置变更、审核历史。
23.一种基于区块链的配置系统、智能合约的配置管理方法包含以下步骤:
24.步骤一、运维人员使用区块链轻客户端,向配置管理智能合约发送配置修改申请;
25.步骤二、多方审核人员通过区块链系统接收到配置修改申请,进行人工审核;
26.步骤三、多方审核人员分别使用区块链轻客户端,向配置管理智能合约发送审核结果;
27.步骤四、智能合约自动统计审核结果为通过的投票是否满足要求
28.c)若满足,则执行配置变更;
29.d)若不满足,则拒绝执行配置变更;
30.步骤五、若智能合约执行配置变更,对应的应用程序使用轻客户端监听到新的配置信息并使用状态根验证该配置信息的默克尔证明,确认无误后执行配置加载。
31.与现有技术相比,本发明的有益效果是:本技术的区块链提供了去中心化的部署能力,不同的节点可以部署在不同的物理机房,个别节点故障不会影响整个网络的正常运行,完美解决了中心化部署带来的容灾率过低的问题。本技术结合区块链的技术,可以实现链上去中心化的配置管理,由不同的参与方共同审核配置变更申请,并且参数变更和审核记录全部在链上存证,彻底杜绝运维人员恶意修改程序参数。
附图说明
32.图1为本发明中一种基于区块链的配置系统部署架构图;
33.图2为本发明中一种基于区块链的配置系统、智能合约及配置管理方法流程图。
具体实施方式
34.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
35.实施例:
36.参照图1所示,本实施例一种基于区块链的配置系统部署架构分为三层:上层为面向运维和审核人员的配置管理系统;中层为去中心化部署的区块链系统,不同的节点可以部署在不同的机房;底层为各应用程序,从区块链系统读取配置信息和监听配置变更。
37.本实施例的一种基于区块链的配置管理系统的管理能力的智能合约,部署在区块链上。
38.本实施例中智能合约包含以下核心部分:一、用户及权限管理;采用经典rbac(基于角色的权限控制)实现用户的角色和权限管理;
39.角色包含:管理员:拥有用户和权限管理的权限,与运维和审核权限互斥;
40.运维人员:拥有发起配置修改申请的权限,与审核权限互斥;
41.审核人员:拥有配置审核权限,与运维权限互斥;
42.审计人员:逻辑角色,不需要在此合约中配置,审计人员通过区块链即可查询到需要被审计的信息;
43.二、环境和配置管理;
44.运维人员可以自定义环境id、名称和描述,并在该环境下针对不同的应用创建配置信息;
45.配置的初始化和变更都需要经过审核;
46.配置初始化之后,由管理员修改该配置的变更是否需要审核、审核人员列表及审核通过的门限;
47.应用程序根据环境id、应用程序标识等信息获取到指定的配置信息。
48.三、审核及审计;
49.审核人员通过审核接口获取待审核的配置变更申请、发送审核结果;
50.审计人员通过审计接口查询需要被审计的配置变更、审核历史。
51.参照图2所示,本实施例一种基于区块链的配置管理系统的配置管理方法包含以下步骤:步骤一、运维人员使用区块链轻客户端,向配置管理智能合约发送配置修改申请;
52.步骤二、多方审核人员通过区块链系统接收到配置修改申请,进行人工审核;
53.步骤三、多方审核人员分别使用区块链轻客户端,向配置管理智能合约发送审核结果;
54.步骤四、智能合约自动统计审核结果为通过的投票是否满足要求;
55.e)若满足,则执行配置变更;
56.f)若不满足,则拒绝执行配置变更;
57.步骤五、若智能合约执行配置变更,对应的应用程序使用轻客户端监听到新的配置信息并使用状态根验证该配置信息的默克尔证明,确认无误后执行配置加载。
58.本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献