Hyperledger fabric Hyperledger Fabric-如何限制Org2安装/实例化/升级通道的链码?
MyFabric network的联盟(在configtx.yaml中)有两个组织:ORG1和ORG2。ORG1有4个主要对等点,ORG2只有1个对等点。ORG2对等方的唯一目的是拥有分类账的副本(用于审计目的) 他们都加入了相同的渠道,比如说ORG1的管理员已经安装/实例化了chaincode版本0.1 现在,ORG2的管理员还可以使用相同的链码名称将“对等链码升级”到0.2版,当提案到达ORG1的一个对等方时,它会说:Hyperledger fabric Hyperledger Fabric-如何限制Org2安装/实例化/升级通道的链码?,hyperledger-fabric,hyperledger,acl,Hyperledger Fabric,Hyperledger,Acl,MyFabric network的联盟(在configtx.yaml中)有两个组织:ORG1和ORG2。ORG1有4个主要对等点,ORG2只有1个对等点。ORG2对等方的唯一目的是拥有分类账的副本(用于审计目的) 他们都加入了相同的渠道,比如说ORG1的管理员已经安装/实例化了chaincode版本0.1 现在,ORG2的管理员还可以使用相同的链码名称将“对等链码升级”到0.2版,当提案到达ORG1的一个对等方时,它会说: endorsement failure during invoke. r
endorsement failure during invoke. response: status:500 message:"cannot retrieve package for chaincode [chaincode name]/0.2, error open /var/hyperledger/production/chaincodes/[chaincode name]/0.2: no such file or directory"
我们如何完全阻止ORG2升级链码版本?以便只有ORG1的管理员才能执行管理操作
我已经搜索了ACL,但似乎管理操作不受ACL设置的控制。经过研究,我们发现我们可以在chaincode包上的实例化策略上设置它 请参阅以下结构文件: 使用标志-i,您可以在打包链码时设置实例化策略。这样,只有策略上允许的组织才能实例化或升级通道上的链码