2

我正在尝试在 Hyperledger Fabric 中实现 ACL。我已经尝试过我的自定义策略peer/proposal并且它工作正常。

我的问题是如果我想阻止 , 和所有其他命令,应该使用peer chaincode install什么资源peer chaincode instantiatepeer channel create

ACL 默认值如下:

# ACL policy for lscc's "getid" function
        lscc/ChaincodeExists: /Channel/Application/Readers


        # ACL policy for lscc's "getdepspec" function
        lscc/GetDeploymentSpec: /Channel/Application/Readers

        # ACL policy for lscc's "getccdata" function
        lscc/GetChaincodeData: /Channel/Application/Readers

        # ACL Policy for lscc's "getchaincodes" function
        lscc/GetInstantiatedChaincodes: /Channel/Application/Readers


        #---Query System Chaincode (qscc) function to policy mapping for access control---#

        # ACL policy for qscc's "GetChainInfo" function
        qscc/GetChainInfo: /Channel/Application/Readers

        # ACL policy for qscc's "GetBlockByNumber" function
        qscc/GetBlockByNumber: /Channel/Application/Readers

        # ACL policy for qscc's  "GetBlockByHash" function
        qscc/GetBlockByHash: /Channel/Application/Readers

        # ACL policy for qscc's "GetTransactionByID" function
        qscc/GetTransactionByID: /Channel/Application/Readers

        # ACL policy for qscc's "GetBlockByTxID" function
        qscc/GetBlockByTxID: /Channel/Application/Readers

        #---Configuration System Chaincode (cscc) function to policy mapping for access control---#

        # ACL policy for cscc's "GetConfigBlock" function
        cscc/GetConfigBlock: /Channel/Application/Readers

        # ACL policy for cscc's "GetConfigTree" function
        cscc/GetConfigTree: /Channel/Application/Readers

        # ACL policy for cscc's "SimulateConfigTreeUpdate" function
        cscc/SimulateConfigTreeUpdate: /Channel/Application/Readers

        #---Miscellanesous peer function to policy mapping for access control---#

        # ACL policy for invoking chaincodes on peer
        peer/Propose: /Channel/CustomPolicy

        # ACL policy for chaincode to chaincode invocation
        peer/ChaincodeToChaincode: /Channel/Application/Readers

        #---Events resource to policy mapping for access control###---#

        # ACL policy for sending block events
        event/Block: /Channel/Application/Readers

        # ACL policy for sending filtered block events
        event/FilteredBlock: /Channel/Application/Readers

有没有办法实现这种功能?

任何帮助/建议将不胜感激。

谢谢

4

2 回答 2

2

peer chaincode install, peer chaincode instantiate,之类的命令peer channel create是管理任务,只有组织的管理员可以使用它们。不允许管理员以外的成员/参与者使用它们。不是为处理此类命令而ACL编写的,因为这些命令仅限于管理员。

因此,答案是否定的。您无法使用 ACL 控制这些命令。

于 2018-08-05T08:56:48.263 回答
1

目前,ACL 与 Lifecycle System Chaincode 或 LSCC(这是处理用户链码的部署、升级和终止事务的系统链码)、配置系统链码或 CSCC(管理系统链码处理配置请求以更改方面的管理系统链码)的链码包有关通道)、客户端事件和对等点(链代码包,而不是 CLI 工具)。下面的图表显示了与每个网络组件相关的资源。

我们可以通过使用 components 类别来引用每个资源,然后使用 /(斜线)将两者分开,例如event/FilteredBlock

我们可以使用它来指定在客户端接收块信息之前必须满足的要求。

访问控制列表

于 2020-06-29T02:02:21.853 回答