hyperledger fabric-ca-client通过javascript使用同一管理员身份注册多个用户

时间:2020-01-22 12:19:05

标签: hyperledger-fabric

当我只有"user1"并使用以下代码行注册时,一切都很好

const secret = await ca.register({ affiliation: 'org1.department1', enrollmentID: 'user1', role: 'client', extra: 'client1'}, adminIdentity);
const enrollment = await ca.enroll({ enrollmentID: 'user1', enrollmentSecret: secret });
const userIdentity = fabric_network_1.X509WalletMixin.createIdentity('Org1MSP', enrollment.certificate, enrollment.key.toBytes());
await wallet.import('user1', userIdentity);

当我再添加一个用户"user2"时,它会被注册。但是当我尝试发现频道时,在下面的代码行中运行

const network = await gateway.getNetwork('mychannel');

我收到以下错误

[Channel.js]:频道:mychannel收到发现错误:访问被拒绝

我已经在crypto-config.yaml中声明了2个用户,但仍然出现此错误。

1 个答案:

答案 0 :(得分:0)

crypto-config.yaml 是一回事,您的Node.js客户端是另一回事。 这意味着您使用crypto-config yaml和cryptogen工具创建的用户不是同一个人,您不能使用该证书来验证您的SDK。

创建新用户时,该用户的证书将放置在Node.js客户端的钱夹文件夹内。 首先检查文件夹是否存在,并且您具有正确的证书。 您可能正在从证书颁发机构发布错误的证书。

相关问题