composer identity issue 授权失败报错 hyperldeger composer v0.15.0

composer identity issue Authorization failure error hyperldeger composer v0.15.0

我遇到了讨论 here 的相同问题,根据评论,我通过删除 .composer-credentials 目录并再次部署我的网络来解决问题。现在我正在使用新版本的作曲家(v0.15.0)。我已经删除了两个目录(.composer-credentials.composer-connection-profiles),但是当我 运行

composer identity issue -c admin@test-network -f membercard -u member -a "resource:org..."

我得到同样的错误 --> fabric-ca 请求注册失败,错误为 [[{"code":400,"message":"Authorization failure"}]].

在 0.15.x 版本中,连接配置文件不再存储在 ${HOME}/.composer-connection-profiles 中。它们存储在您的卡中。连接配置文件现在不应包含 keyValStore 属性,因此目录 ${HOME}/.composer-credentials 不再用于缓存凭据。 对于 0.15.0,如果你想清除卡片和缓存的凭据,那么现在你需要删除 ${HOME}/.composer 目录并重新导入所有卡片。 将来您将能够删除一张卡,这也将清除所有缓存的凭据。

我们没有您所做的完整历史记录,但以下顺序应该会有所帮助。

在 v0.15.0 中,我们已经转移到业务网卡,您可以在带有 -c 选项的命令行上使用它们。 删除与旧版本关联的 ~/.composer-credentials~/.composer-connection-profiles 文件夹后,我假设您还使用结构工具中的 createPeerAdminCard.sh 脚本创建了 PeerAdmin 卡。

我假设你已经执行了 2 个命令: composer runtime install ...composer network start ...

然后是运行: composer card import ... 导入您使用 composer network start 命令创建的网络管理员名片。

为了进一步诊断您的问题,我建议: composer card listcomposer card list --name 确认您拥有的卡片

然后 ping 以确认您的网络管理员工作正常 composer network ping...

现在试试 composer network list ... 该列表将向您显示您拥有的参与者(除其他外)以及参与者应与您在 composer identity issue 命令中使用 -a 传递的数据相匹配。

此时您应该已经看到最初导致访问问题的网络管理员 ID 是否正常工作,或者应该有更多信息可以跟进。

自从我使用 v0.15.0 以来,我在为新创建的参与者颁发身份时遇到了同样的问题。删除 ${HOME}/.composer${HOME}/.composer-credentials${HOME}/.composer-connection-profiles 目录并重新导入卡片后,我的问题就解决了。