我遇到了业务网络部署问题(作曲家版本0.14.2):
Error: Error trying deploy. Error: Error trying install composer runtime. Error: chaincode error (status: 500, message: Authorization for INSTALL has been denied (error-Failed verifying that proposal's creator satisfies local MSP principal during channelless check policy with policy [Admins]: [This identity is not an admin]))
有关此问题的任何帮助吗?不应该向结构请求证书 - 可以是具有管理员权限的证书吗?
答案 0 :(得分:1)
您收到的错误来自对等方,说您使用的身份没有管理员权限,因此不允许将链码安装到其上。 fabric-ca-server设置中的管理员标识只是fabric-ca-server的bootstrap标识,因此在fabric-ca-server上只有发行者权限,从中获取它并且没有任何部分的管理员权限面料网络。
答案 1 :(得分:0)
如果您之前在v0.13.2
或更低版本上投放,则升级到v0.14.0
或v0.14.2
时会发生重大变化。您可以阅读更多here。但它的主旨是所有以前版本的Composer,所有名称为admin(不区分大小写)的数字证书都具有"特权访问权限#34;到业务网络 - 本质上它就像访问控制规则被禁用一样。他们用更安全的模型取而代之。因此,您可以更改permissions.pcl
文件并添加:
rule NetworkAdminUser {
description: "Grant business network administrators full access to user resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "**"
action: ALLOW
}
rule NetworkAdminSystem {
description: "Grant business network administrators full access to
system resources"
participant: "org.hyperledger.composer.system.NetworkAdmin"
operation: ALL
resource: "org.hyperledger.composer.system.**"
action: ALLOW
}
然后在归档BNA之后,为了正确部署,请使用:
composer network deploy -p hlfv1 -a {ban_location/ban_name.bna} -i PeerAdmin -s randomString -A admin -S adminpw
在此之后,你可以像以前一样使用admin
和adminpw
的旧命令:
composer-rest-server -p hlfv1 -n my-network -i admin -s adminpw -N never