Hyperledger-Composer:在 ping 网络管理卡时得到 "access denied"

Hyperledger-Composer: Getting "access denied" when pinging network admin card

我在 Hyperledger Fabric 上使用 Hyperledger Composer 来部署 .bna 文件。为不同组织创建 networkAdmin 卡时出现问题,它们无法访问网络。

背景

项目结构如下:

解决问题的步骤如下:

  1. 使用证书privateKey文件创建PeerAdmin卡[=41] =]/msp/keystore/ 每个组织
  2. 使用composer network install ...为每个使用PeerAdmin
  3. 的组织同级安装网络存档
  4. composer network start ... 命令中指定的每个网络管理员请求的身份(每个组织一个)
  5. 使用
    为所有对等点启动网络 composer network start \ --card PeerAdmin@$NETWORK_NAME-exporter01 \ --networkName $NETWORK_NAME \ --networkVersion $NETWORK_VERSION \ -o endorsementPolicyFile=./endorsement-policy.json \ -A exporter01 \ -C $TMP_BASEDIR/exporter01/admin-pub.pem \ -A maritimeAgency01 \ -C $TMP_BASEDIR/maritimeAgency01/admin-pub.pem \ -A terminal01 \ -C $TMP_BASEDIR/terminal01/admin-pub.pem \ -A terrestrialTransport01 \ -C $TMP_BASEDIR/terrestrialTransport01/admin-pub.pem

问题

使用 composer card create ...

并用composer card import ...导入卡成功导入。 但是 在使用 composer network ping -c <created networkAdmin card> 时命令失败并显示以下消息

Error: Error trying to ping. Error: 2 UNKNOWN: access denied: channel [mychannel] creator org [Exporter01MSP]

知道为什么会这样吗? 谢谢!

两周后发现错误。在这里为社区记录。

这是 Hyperledger-Fabric 配置错误。

当使用多个 CA(每个组织一个)时,您必须将证书添加到订购者 docker 容器作为环境变量 ORDERER_GENERAL_TLS_ROOTCAS 否则这些 CA 颁发的任何身份将无法连接。

在下面的 fabric-sample Repo 第 55 行中找到了解决方案。不要忘记 link 卷(第 63-64 行)。