Hyperledger Fabric Composer-限制系统管理员的访问权限



我的问题是关于hyperledger fabric composer中的访问控制。

假设你有一个商业网络,其中有以下参与者:

  1. 卖家
  2. (潜在(买家

卖家是向购买公司销售产品的公司的员工。买方是采购公司的雇员。

示例:收购公司是戴姆勒。戴姆勒的三名员工在网络中注册为买家。销售公司是通用电气。通用电气的两名员工在网络中注册为卖方。

使用hyperledger composer的访问控制语言,可以随意限制买家和卖家的访问权限。

但是节点级别的访问控制情况如何

不仅有买方和卖方,还有两名系统管理员:一名系统管理员负责戴姆勒同行,一名系统管理人员负责通用电气同行。

默认情况下,系统管理员可以访问所有数据。也就是说,戴姆勒系统管理员可以访问通用电气注册员工的所有数据。反之亦然,通用电气系统管理员可以访问戴姆勒注册员工的所有数据。

是否可以将系统管理员的访问权限限制为少数权限,例如:

  1. 安装和启动业务网络的权利
  2. 控制其他系统管理员对系统进行更改的权利(例如,如果戴姆勒系统管理员更改了应用程序的代码,则通用电气管理员必须批准这些更改才能生效(
  3. 阅读访问自己公司的员工

对超级账本结构的访问(包括与业务网络的交互(由超级账本结构MSP管理。作为超级账本结构网络和通道设置的一部分,超级账本结构定义哪些身份(通过MSP创建(有权将链代码安装到对等端,哪些身份有通道权限,以便能够实例化或升级链代码。可以将对等安装和通道实例化/升级限制为特定标识。例如,有关Hyperledger结构MSP的信息可以在以下链接中找到https://hyperledger-fabric.readthedocs.io/en/release-1.2/msp.html但您可能希望熟悉本节所属的完整操作部分。

Composer中的访问控制是通过参与者和业务网络ACL文件完成的。您可以控制哪些参与者可以对Composer运行时控制的资源执行各种操作。您需要一个身份(由MSP生成(才能在渠道/链代码上进行交互(根据超级账本结构的要求(。为了在业务网络上进行交互,必须事先将该身份映射到特定参与者。当请求被发送到业务网络时,composer将根据发出请求的身份查找特定参与者,并使用该参与者及其类型,通过业务网络ACL文件中的信息来确定允许做什么。

请注意,像对等安装、通道实例化/链代码升级这样的功能是结构级别的功能,而不是编写器功能,因此您不能通过编写器ACL定义来控制这些类型的活动

最新更新