代码之家  ›  专栏  ›  技术社区  ›  steady_progress

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

  •  11
  • steady_progress  · 技术社区  · 6 年前

    我的问题是在HyperledgeFabricComposer中的访问控制。

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

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

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

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

    使用HyperledgeComposer的访问控制语言,可以随意限制买卖双方的访问权限。

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

    不仅有买方和卖方,还有两个系统管理员:一个负责戴姆勒对等机的系统管理员和一个负责通用电气对等机的系统管理员。

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

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

    1. 商业网络的安装和启动权
    2. 控制其他系统管理员对系统所做更改的权利(例如,如果戴姆勒系统管理员更改了应用程序的代码,则通用电气管理员必须在这些更改生效之前批准它们)
    3. 读取对自己公司员工的访问权限
    1 回复  |  直到 6 年前
        1
  •  4
  •   david_k    6 年前

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

    Composer中的访问控制通过参与者和业务网络ACL文件完成。您可以控制哪些参与者可以对由编写器运行时控制的资源执行各种操作。 您需要一个标识(由您的MSP生成),以便能够在通道/链码上进行交互(根据Hyperledger结构的要求),此标识必须事先映射到特定参与者,以便在业务网络上进行交互。当请求发送到业务网络时,Composer将根据发出请求的标识查找特定参与者,并使用该参与者及其类型,通过业务网络ACL文件中的信息确定允许执行的操作。

    请注意,类似于对等安装、通道实例化/链代码升级之类的功能是一种结构级别的功能,而不是作曲家功能,因此您不需要通过作曲家ACL定义来控制这些类型的活动。