【FISCO-BCOS】十七、角色的权限控制

news2025/1/10 23:53:13

目录

一、角色定义

二、账户权限控制

        1.委员新增、撤销与查询

        2.委员权重修改 

        3.委员投票生效阈值修改 

        4. 运维新增、撤销与查询


一、角色定义

        分为治理方、运维方、监管方和业务方。考虑到权责分离,治理方、运维方和开发方权责分离,角色互斥。

  • 治理方:拥有投票权,可以参与治理投票(AUTH_ASSIGN_AUTH),可以增删节点、修改链配置、添加撤销运维、冻结解冻合约、对用户表的写权限控制。链级别的可变配置的权限。

  • 运维方:由治理方添加运维账号,运维账号可以部署合约、创建表、管理合约版本、冻结解冻本账号部署的合约。

  • 业务方:业务方账号由运维添加到某个合约,可以调用该合约的写接口。

  • 监管方:监管方监管链的运行,能够获取链运行中权限变更的记录、能够获取需要审计的数据

二、账户权限控制

        现拥有账户:A:0xa767a4206ef39a17e40773d694051434bf557e24,B:0xba0bc02599215aff47357bc7c764a1132c52b355,C:0xd3f18300cfc68ef9fe17798fd7b36436ee252792,分别使用其私钥进入控制台,具体操作可参见这里:【FISCO-BCOS】十五、创建和使用账户_奈何不吃鱼的博客-CSDN博客

        1.委员新增、撤销与查询

        新增A账户为委员,由于目前只要A账户为委员,因此只需要一票即可通过

         如果我们再新增B账户为委员,此时由于只有账号1是委员,所以账号1投票即可生效。

        使用listCommitteeMembers查看委员列表

        如果此时要撤销账号B的委员,由于此时系统中有两个委员,默认投票生效阈值50%,所以需要两个委员都投票撤销账号B的委员权限

        此时查看委员列表,撤销权限成功

        2.委员权重修改 

        先添加账户A、账户C为委员,使用账号A的控制台投票更新账号A的票数为2

        由于账户C也是委员,所以权重修改也需要在C账户的控制台执行

        3.委员投票生效阈值修改 

        账户A和账户C为委员,账号A有2票,账号C有1票,使用账号A添加账号B为委员,由于2/3>0.5所以直接生效。使用账号A和账号B,更新生效阈值为75%。

        使用账户A控制台投票更新生效阈值为75%

         使用账户B控制台投票更新生效阈值为75%

        4. 运维新增、撤销与查询

        委员可以添加运维,运维角色的权限包括部署合约、创建表、冻结解冻所部署的合约、使用CNS服务,先使用get_account脚本再生成一个新的账户D:0xdbb5445316fd2b1690a1ebeee62d12aab9cf7b46

        添加账号D为运维角色

        使用账号D部署HelloWorld,成功

        使用账号A部署HelloWorld,失败 

        撤销账号D的运维权限 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1068109.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

pytorch_神经网络构建2(数学原理)

文章目录 深层神经网络多分类深层网络反向传播算法优化算法动量算法Adam 算法 深层神经网络 分类基础理论: 交叉熵是信息论中用来衡量两个分布相似性的一种量化方式 之前讲述二分类的loss函数时我们使用公式-(y*log(y_)(1-y)*log(1-y_)进行概率计算 y表示真实值,y_表示预测值 …

MyBatisPlus(十五)分页查询

说明 MyBatisPlus 提供了分页查询的功能。 MyBatisPlus 的分页功能,是通过分页插件实现的。要使用分页功能,需要配置分页插件的拦截器。 MyBatisPlus 的分页功能,可以通过内置的API接口实现;也可以通过自定义的 mapper#method …

第七章 正交实验法用例评审bug管理流程

一、正交试验法 利用因果图来设计测试用例时,作为输入条件的原因与输出结果之间的因果关系,有时很难从软件需求规格说明中得到。往往因果关系非常庞大,以至于据此因果图得到的测试用例数目多的惊人,给软件测试带来沉重的负担,为了有效地合理地减少测试的工时与费用,可利…

合并不同门店数据-上下合并

项目背景:线下超市分店,统计产品的销售数量和销售额,并用透视表计算求和 merge()函数可以根据链接键横向连接两张不同表,concat()函数可以上下合并和左右合并2种不同的合并方式。merge()函数只能横向连接两张表,而con…

海信电视U8“死磕”技术,家庭影音娱乐的体验突围

最近《奥本海默》上映,导致我无心工作,沉迷抢票。因为北京能播放该片IMAX 1.43画幅的影院只有一家,场场爆满,一票难求。 这次经历也让我对科技产业多了一点思考。流媒体火爆之后,电影发烧友还是会去影院看电影&#xf…

企业信息查询平台:天眼销正式上线!

在团队的不断努力下,天眼销平台终于和大家见面了!总所周知我们是一家数据服务提供商,作为西南数据交易所的数据提供商之一,之前主要是面向B端客户提供数据服务。现在,我们上线的天眼销(tianyanxiao.)主要面…

Android ncnn-android-yolov8-seg源码解析 : 实现人像分割

1. 前言 上篇文章,我们已经将人像分割的ncnn-android-yolov8-seg项目运行起来了,后续文章我们会抽取出Demo中的核心代码,在自己的项目中,来接入人体识别和人像分割功能。 先来看下效果,整个图像的是相机的原图&#…

增强现实抬头显示AR-HUD

增强现实抬头显示(AR-HUD)可以将当前车身状态、障碍物提醒等信息3D投影在前挡风玻璃上,并通过自研的AR-Creator算法,融合实际道路场景进行导航,使驾驶员无需低头即可了解车辆实时行驶状况。结合DMS系统,可以…

【C++】C++11(万能模版、完美转发,可变参数模版,lambda表达式,包装器function+bind绑定)

前言: 我们上一章一节已经接触了C11的一些特性,本章将继续更深入介绍C11中其他使用且重要的一些功能。 目录 (一)万能模版和完美转发 1、万能模版 2、完美转发 (二)可变参数模版 1、可变参数模版的使…

【Node.js】NPM 和 package.json

NPM npm 是 Node.js 的包管理工具,基于命令行,用于安装、升级、移除、管理依赖项。 常用命令: npm init:初始化一个新的 npm 项目,创建 package.json 文件。(括号里为默认值) description&am…

信息可视化和数据可视化的异同和其他比较,到底怎么区分呢?

什么是数据可视化? 根据维塔利弗里德曼的说法: “数据可视化的主要目标是通过图形方式清晰有效地传达数据。” 数据可视化是将数据转化为图表、图形、地图等视觉元素的过程,以便人们更容易理解数据的趋势、关系和模式。它通常强调的是对数据的视觉呈…

Git开发环境使用

目录 git简单介绍 问题 在Git Bash下的操作 在工具idea中使用git 创建分支 合并分支 部分命令合集 git简单介绍 Linux发布了一套属于自己的版本控制系统,运用git可以实现, 代码回溯 , 版本切换 因为是Git是分布式版本控制系统&#x…

unity脚本_Time c#

Time 用于游戏中参与位移 计时 时间暂停等 时间缩放比例: 首先在场景上新建一个空物体 将脚本挂载到空物体上运行 另外重要的两点

从「博客园」的困境,到「用爱发电」~

听人劝、吃饱饭,奉劝各位小伙伴,不要订阅该文所属专栏。 作者:不渴望力量的哈士奇(哈哥),十余年工作经验, 跨域学习者,从事过全栈研发、产品经理等工作,现任研发部门 CTO 。荣誉:2022年度博客之星Top4、博客专家认证、全栈领域优质创作者、新星计划导师,“星荐官共赢计…

JavaScript中的map()和forEach()方法有什么区别?

聚沙成塔每天进步一点点 ⭐ 专栏简介 前端入门之旅:探索Web开发的奇妙世界 欢迎来到前端入门之旅!感兴趣的可以订阅本专栏哦!这个专栏是为那些对Web开发感兴趣、刚刚踏入前端领域的朋友们量身打造的。无论你是完全的新手还是有一些基础的开发…

【javaweb】学习日记Day11 - tlias智能管理系统 - 文件上传 新增 修改员工 配置文件

目录 一、员工管理功能开发 1、新增员工 postman报错500的原因 (1)Controller类 (2)Service类 (3)Mapper类 2、根据ID查询 (1)Controller类 (2)Serv…

【网络安全 --- kali2023安装】超详细的kali2023安装教程(提供镜像资源)

如果你还没有安装vmware 虚拟机,请参考下面博客安装 【网络安全 --- 工具安装】VMware 16.0 详细安装过程(提供资源)-CSDN博客【网络安全 --- 工具安装】VMware 16.0 详细安装过程(提供资源)https://blog.csdn.net/m0…

mysql MVCC(多版本并发控制)理解

最近看MVCC相关资料,这边做一个记录总结,方便后续理解。 目录 一、MVCC相关概念 二、MVCC实现原理 1.隐藏字段 2.undo log 3.Read View 4.MVCC的整体处理流程 5. RC,RR级级别下的innoDB快照读有什么不同 6.总结 一、MVCC相关概念 1…

在Ubuntu中批量创建用户

一、背景知识 在Linux操作系统中创建新用户可以使用useradd或adduser命令。 使用useradd命令创建用户时,不会在/home目录下创建用户文件夹,需要用户自己指定主目录和bash目录的位置。同时,创建的用户没有设置密码,无法进行登录&a…

electronjs入门-聊天应用程序,与Electron.js通信

随着第一章中构建的应用程序,我们将开始将其与Electron框架中的模块集成,并以此为基础,以更实用的方式了解它们。 过程之间的通信 根据第二章中的解释,我们将发送每个进程之间的消息;具体来说联系人和聊天&#xff1…