我正在尝试使用以下代码查询区块链并获取访问被拒绝错误。我也在sendTransactionProposal
方法时遇到同样的错误。
UserContext adminUserContext = RegisterEnrollUser.registerAdminUser(Config.CA_ORG1_URL, Config.ORG1_MSP, Config.ORG1);
FabricClient fabClient = new FabricClient(adminUserContext);
ChannelClient channelClient = fabClient.createChannelClient(Config.CHANNEL_NAME);
Channel channel = channelClient.getChannel();
Peer peer = fabClient.getInstance().newPeer(Config.ORG1_PEER_0, Config.ORG1_PEER_0_URL);
EventHub eventHub = fabClient.getInstance().newEventHub("eventhub01", Config.ORG1_PEER_0_URL_Eventhub);
Orderer orderer = fabClient.getInstance().newOrderer(Config.ORDERER_NAME, Config.ORDERER_URL);
channel.addPeer(peer);
channel.addEventHub(eventHub);
channel.addOrderer(orderer);
channel.initialize();
Collection<ProposalResponse> responsesQuery = channelClient.queryByChainCode("tmz", "queryAllEntries", null);
引起:org.hyperledger.fabric.sdk.exception.ProposalException:通道mychannel的getConfigBlock与peer peer0.org1.example.com失败。状态FAILURE,详细信息:向peer0.org1.example.com发送提案失败,原因是:gRPC失败=状态{code = UNKNOWN,description =访问被拒绝:channel [mychannel] creator org [Org1MSP],cause = null}
以下是peer0.org1.example.com的日志
主要反序列化失败(提供的标识无效:x509:由未知授权机构签署的证书)用于标识。 WARN 2a11 [channel:mychannel]客户授权被撤销,以便传递请求 在使用策略[/频道/应用程序/读者]的频道[mychannel]上的检查策略期间评估签名数据的策略失败:[无法达到1个子策略的隐含阈值,需要剩余1个]
2018-06-14 21:05:11.545 UTC [common / deliver]句柄 - &gt; DEBU 2a12等待来自
的新SeekInfo2018-06-14 21:05:11.545 UTC [common / deliver]句柄 - &gt; DEBU 2a13尝试从
读取搜索信息2018-06-14 21:05:11.609 UTC [common / deliver]句柄 - &gt; WARN 2a14读取错误:rpc错误:代码=取消desc =上下文取消
2018-06-14 21:05:11.609 UTC [common / deliverevents] func1 - &gt; DEBU 2a15关闭交付流
答案 0 :(得分:-1)
此错误类似于adminUserContext的mspID问题。
您是否检查adminUserContext的mspId是否为Org1MSP?
我认为您最好检查adminUserContext。