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

目录

一、角色定义

二、账户权限控制

        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的运维权限 

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

奈何不吃鱼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值