我可以使用节点 sdk 更新 Hyperledger Fabric 中的背书策略吗?

Can I update an endorsement policy in Hyperledger Fabric using node sdk?

我在实例化链代码时设置背书策略,我想知道我是否可以在稍后阶段使用节点 sdk 更新背书策略,因为当新组织添加到通道时,我希望它们也参与其中的背书政策。目前我们正在做的解决方法是将链码升级到新版本,重新安装在所有节点上,然后在升级时更改背书策略。不过感觉这不是正确的方法。在这方面的任何指示都会有很大帮助!

在 fabric release-1.4 中这样做实际上是正确的解决方案。

背书政策与频道配置不同,您可以像@kekomal 所说的那样使用 delta-envelope 更新它。您可以使用更新频道配置 新组织、新节点和 CRL,但不是链代码策略。

背书策略在链码被实例化时确定,这意味着它在链码生命周期中,单独来自通道配置。

尽管 fabric release-2.1(自 2.0 起)推出了全新的链代码生命周期,但情况完全不同,您可能不需要每次都升级链代码。

In addition to the specifying an endorsement policy from the CLI or SDK, a chaincode can also use policies in the channel configuration as endorsement policies. You can use the –channel-config-policyflag to select a channel policy with format used by the channel configuration and by ACLs.

see here

每次将新组织引入网络时,您都需要更新频道配置。由于链代码可以使用与通道相同的策略,您不妨尝试一下新的生命周期。

到目前为止我还没有尝试过,因为我只是在这里提供一些想法。请告诉我这是否有效。

谢谢。