首页 > 解决方案 > 如何将资产更新限制为仅一个组织,但允许所有人读取资产?

问题描述

我有 3 个使用 HLF v2.2 的组织 Org1、Org2 和 Org3。组织将一些组织特定的数据存储在区块链上的键值对(资产)中(键是唯一的,因为我们以组织代码为前缀)。区块链上带有组织代码前缀的键值对可由该组织更新(创建、更新和删除),其余组织只能具有读取访问权限。我们怎样才能实现这种行为?我正在考虑在将 Org mspid 与 Org 代码映射的链代码中以及在管理组织资产的函数中设置一个缓存,然后我可以检查调用是否来自特定组织并相应地允许执行更新操作。任何想法都非常感谢。

标签: gohyperledger-fabric

解决方案


也许私有数据适合您的用例。查看本文中的场景 2:https ://kctheservant.medium.com/private-data-collection-policy-demonstrating-members-only-read-and-write-features-b2e03ff02332 。这样,您可以为每个组织定义一个私有集合,其他组织可以读取该集合(尽管请求客户端应该查询相应组织的对等方)。

如果您的隐私问题仅与客户有关(如果您信任来自其他组织的同行和订购者),那么您可能不需要私有数据功能。您可以简单地评估链代码中的请求者 MSP 以应用您的限制。


推荐阅读