445  
增强的权限
作者: 姜天雨 于 2021年07月15日 发布在分类 / 区块链基础知识 / 底层框架资料 / GoQuorum 下,并于 2021年07月15日 编辑

使用增强的 权限

管理 enhanced permissioning model   可以大致分为以下活动:

初始网络设置

请参考 设置 。对于运行旧版本 GoQuorum 的现有网络:

  • GoQuorum 升级到最新版本

  • 部署合约

  • 从监护人账户执行 PermissionsUpgradable.sol  init  方法

  •  permission-config.json  复制到各个节点的 data 目录下

  •  --permissioned  模式启动  geth 

对于使用最新版本的 GoQuorum 的新网络:

  • 调出初始节点集

  • 部署合约

  • 从监护人账户执行  PermissionsUpgradable.sol  init  方法

  • GoQuorum 升级到最新版本

  • permission-config.json 复制到各个节点的 data 目录下

  •  --permissioned  模式启动  geth 

作为网络初始化的一部分:

  • 使用在 permission-config.json 中指定的  nwAdminOrg  名称创建网络管理员组织。属于  static-nodes.json  的所有节点都分配给该组织。

  • 使用配置文件中指定的  nwAdminRole 名称创建网络管理员角色。

  • 所有帐户中给 有配置文件数组 accounts  都被分配了网络管理员角色。这些帐户将能够提议和批准新组织加入网络。

粘贴图片

粘贴图片

提议在网络中建立一个新组织

  • 一旦网络启动,网络管理员帐户就可以向网络提议一个新组织。  
  • 在批准组织之前,需要获得网络管理员帐户的多数批准。
  • 用于 proposing   approving   组织的 API 记录在 permission APIs 中。
粘贴图片

粘贴图片

粘贴图片

组织管理员管理组织级别权限

一旦组织获得批准并且组织的节点加入网络,组织管理员可以:

  • 创建子组织、角色,在组织级别添加其他节点。

  • 将帐户添加到组织。

  • 更改现有组织级别帐户的角色。

  • 要在 ORG1  级别添加子组织,请参阅 addSubOrg API

粘贴图片

对于添加子组织, enode id 不是强制性的。

对于新创建的子组织,如果组织管理员希望添加管理帐户,则组织管理员帐户必须首先创建一个 isAdmin 标志为 Y 的角色,然后将此角色分配给属于子组织的帐户。

分配后,该帐户将在子组织级别充当组织管理员。

请参阅 addNewRole API .

粘贴图片

现在可以将角色 SUBADMIN  分配给子组织 SUB1 的帐户,以便为子组织设置帐户管理员。

粘贴图片

粘贴图片

粘贴图片

粘贴图片

要向组织添加账户,请参阅 addAccountToOrg API

粘贴图片

要暂停账户,可以调用   updateAccountStatus  API status 的值设为 1

粘贴图片

要撤销账户的暂停,可以调用   updateAccountStatus  API status 的值设为 2

粘贴图片

要移除一个账户,可以调用   updateAccountStatus  API status 的值设为 3

一旦排除,该帐户将无法进行进一步的活动。

粘贴图片

由组织管理员在组织和子组织级别添加节点 add Nodes  

粘贴图片

组织管理员可以使用 updateNodeStatus  API 管理节点的状态。

要停用节点,可以使用值为 的操作调用 API

粘贴图片

要重新激活节点,请使用值为 2 的操作调用 updateNodeStatus API

粘贴图片

要排除节点,请使用操作值 3 调用 updateNodeStatus   API

一旦被排除,该节点将永远无法再次加入网络。

粘贴图片

更多:

  • 帐户可以从链接到同一组织中的组织或子组织的任何节点进行交易

  • 如果一个节点被停用,则该节点将不允许进行任何交易

暂时暂停组织

如果需要暂停组织的所有活动, updateOrgStatus  API 可以使用 action 1 调用。

这只能由网络管理员帐户调用,并且需要多数投票。

粘贴图片

要批准组织,需要暂停其他网络管理员帐户的多数批准。

相同的 api approveOrgStatus

一旦获得批准,组织状态将被标记为暂停。

粘贴图片

当组织被暂停时,不允许来自与组织或它下的子组织相关联的任何帐户的交易。 但是,链接到组织的节点将处于活动状态,并将与网络同步。

撤销对组织的暂停

要撤销组织 updateOrgStatus 的暂停,可以使用操作值 2 调用

这将需要多数批准( API  approveOrgStatus   ,操作值为 2 )。

粘贴图片

一旦撤销获得批准,组织和子组织中的所有账户都将能够按照角色级别的访问权限进行交易。


在组织和网络级别分配管理员权限

可能存在这种情况:组织级别的帐户之一需要具有网络管理员级别的权限并能够执行网络管理员活动。

同样,可能需要在组织级别更改管理员帐户。

这两项活动只能由现有的网络管理员帐户执行,并且需要网络管理员帐户的多数批准。

API使用详情

要将网络管理员或组织管理员角色分配给帐户,请调用 assignAdminRole

粘贴图片

要批准网络管理员角色的分配,请调用 approveAdminRole  API

粘贴图片

上述帐户现在可以执行网络管理员帐户允许的所有活动,并且可以参与网络级别的任何操作批准过程




 推荐知识

 历史版本

修改日期 修改人 备注
2021-07-15 17:48:22[当前版本] 姜天雨 修改内容
2021-07-15 17:47:13 姜天雨 创建版本

 附件

附件类型

PNGPNG

  目录
    区块链服务网络发展联盟