在Hyperledger Fabric Docs中,在阅读有关私有数据收集的内容时,我遇到了关于memberReadOnly的这句话:
如果要在单个chaincode函数中对更细粒度的访问控制进行编码,请使用false的值。
如果我正确理解这一点,这将使我能够编码到智能合约规范中,从而将控制范围限制在例如一个组织的特定客户,而不是成员组织的所有同行。
如果是这样,我很好奇合同中如何做到这一点。是否有处理访问控制的特定方法,或者由我自行决定编写将执行该访问控制的代码?如果您可以向我提供任何示例,将非常有帮助。
[澄清我的意思,我来自以太坊,我本质上是在问,是否牢固地存在诸如require方法之类的东西,还是我只使用一个简单的if。
感谢您的帮助。如果您因错误的网站而关闭问题,请指向正确的地方,因为我无法找到更相关的地方。
您的理解不正确。
[将此值(memberOnlyRead
)设置为true
表示,如果客户端向对等方发送投标,并且客户端不在集合中,则如果对等方位于集合中并且可以访问数据-无论智能合约说什么,它都会自动拒绝并显示错误。
如果为假,则对等方将不会执行此类操作,因此您将拥有更多的自由来为客户端编写所需的任何访问控制逻辑。