将组织添加到频道和作曲家

时间:2018-04-11 13:54:54

标签: hyperledger-fabric hyperledger-composer

我正在制定在使用Composer时如何向Fabric添加第三个组织的步骤。

在浏览Deploying to a multi-organization Hyperledger Fabric教程时,启动网络并使用相同的命令指定网络管理员:

composer network start -c PeerAdmin@byfn-network-org1 -n trade-network -V 0.1.14 -o endorsementPolicyFile=/tmp/composer/endorsement-policy.json -A alice -C alice/admin-pub.pem -A bob -C bob/admin-pub.pem

通过Adding a Org to a Channel教程,我添加了第三个组织。但是该教程没有涉及作曲家和卡片(因为它处理的是Fabric,而不是Composer)。我可以按照新组织的多组织教程中的步骤轻松创建相应的卡,但我没有看到如何将新的网络管理员添加到网络中。 composer network start允许使用--networkAdmin--networkAdminCertificateFile个参数,但composer network upgrade没有类似的内容。

那么我们如何在网络中添加更多网络管理员呢?或者更好的问题是在运行--networkAdmin时添加--networkAdminCertificateFilecomposer network start会做什么,我可以从那里开始工作?

我正在运行Composer v0.19.0和Fabric v1.1。

1 个答案:

答案 0 :(得分:0)

首先,您可能已经在Fabric级别测试了新的3-Org Fabric网络 - 例如,将Fabric marbles https://github.com/IBM-Blockchain/marbles/tree/v4.0/chaincode/src/marbles部署到您更改的区块链Fabric网络。

正如您在本教程中看到的那样,您首先将composer network install业务网络添加到对等方(使用该Org中具有对等管理权限的人并使用创建的Composer连接配置文件,类似于在您引用的教程链接中显示 - 构建有问题的对等管理业务网卡)。显然,您还需要根据您希望如何在3个组织中实施策略来设置您的认可政策。再次,您将在教程中看到它。

启动业务网络时,必须将所有业务网络管理员的证书(身份的公共部分)传递给执行start的组织(在我们的示例中,它是Org 1)命令启动业务网络 - 跨越通道 - 在Composer连接配置文件中定义,如您所见。业务网络启动后,所有业务网络管理员(在其各自的组织中)可以使用其身份通过使用其公钥/私钥凭证的业务网卡与业务网络进行交互。证书来源于起始位,因为这是多组织设置的情况(与开发人员教程环境设置相反,其中使用了注册ID /注册密码)。

在Multi-Org教程中,我们使用请求命令从各自的CA服务器请求alice和bob的预先存在的身份(证书) - 它使用Fabric CA客户端来实现这一点。您的新CA(Org3)可以为业务网络管理员发布身份(在Fabric级别),类似于其他组织中的'alice'和'bob'。获得证书(使用公钥)后,您可以将其与c​​omposer network start命令一起使用:

composer network start -c PeerAdmin @ byfn-network-org1 -n trade-network -V 0.1.14 -o endorsementPolicyFile = / tmp / composer / endorsement-policy.json -A alice -C alice / admin-pub。 pem -A bob -C bob / admin-pub.pem -A xxx -C xxx /

并且'PeerAdmin'(在我们的例子中)使用的配置文件将需要在其connection.json连接配置文件中拥有Org 3的对等信息,该配置文件是其业务网卡的一部分,

然后您可以使用composer card create命令使用他/她的公钥/私钥为Org 3中的业务网络管理员创建业务网卡,例如,

composer card create -p /tmp/composer/org3/byfn-network-org1.json -u xname -n trade-network -c xxx / xxx-pub.pem -k xxx / xxxx-priv.pem

并使用composer card import

导入它

要创建卡片,请参阅https://hyperledger.github.io/composer/latest/reference/composer.card.create.html

要将第三个组织添加到已经运行的现有业务网络,您需要将composer identity bind作为业务网络中的现有参与者运行。这是现有业务网络参与者同意(通过区块链事务)新业务网络参与者可以加入并使用其身份的行为。如上所述,您需要注册第三个Org的Fabric CA管理员,为他获取证书/私钥对,然后将证书绑定到业务网络中的网络管理员。绑定后,它可以与业务网络进行交互,因为它是Fabric CA管理员,它可以用于在该组织中发布新的身份。