超级账本CA动态生成的新用户证书如何通过cli加入网络

这段时间一直在看CA的相关内容,在能够利用CA动态的生成证书后,就开始思考如何把CA生成的证书加入到网络中,和链码进行交互。目前应该是只有下面两种方法:

1.通过SDK来与网络交互
这点是官方文件就已经给出的,包含管理员enroll,新用户register,新用户enroll以及利用新用户证书query和invoke操作等。就按照官方顺序一步步的操作下来,一点问题没有。

2. 通过cli交互
因为1.4版本官方已经给出了包含启动ca镜像的脚本文件(./byfn.sh )了,所以就一直想着可以通过cli直接改变msp路径来使用新生成的证书。(参考深蓝大神 https://www.cnblogs.com/studyzy/p/7482451.html)
基本过程:
1)使用命令 ./byfn.sh up -a -s couchdb 启动网络
2)进入ca-peerOrg1容器

docker exec -it ca_peerOrg1 bash

3) 注册管理员用户以及注册新用户

cd /usr/local/bin
export FABRIC_CA_CLIENT_HOME=$HOME/ca
./fabric-ca-client enroll -u http://admin:adminpw@localhost:7054
./fabric-ca-client register --id.name Jim --id.type user --id.affiliation org1.department1 --id.attrs 'hf.Revoker=true,foo=bar'
./fabric-ca-client enroll -u http://Jim:password@localhost:7054 -M $FABRIC_CA_CLIENT_HOME/Jim

4)此时在/root/ca文件夹中就会出现:
在这里插入图片描述
其中msp对应的是管理员用户,而Jim就是我们新注册的用户

5)通过docker cp命令将msp文件夹和Jim文件夹复制到crypto-config/peerOrganizations/org1.example.com/users中,具体的处理细节参考深蓝大神的 https://www.cnblogs.com/studyzy/p/7482451.html
最终处理效果:
管理员账户
MSGUANLI
Jim用户
在这里插入图片描述
6)在安装好大神写的链码后,进入cli容器切换用户调用链码(?代指Jim或devin):

   docker exec -it cli bash
   CORE_PEER_MSPCONFIGPATH=/opt/gopath/src/github.com/hyperledger/fabric/peer/crypto/peerOrganizations/org1.example.com/users/?/msp
   peer chaincode query -C mychannel -n test1 -c '{"Args":["cert"]}'

7)结果:
管理员用户:
在这里插入图片描述
成功!!!!!

Jim用户:
在这里插入图片描述
出错!竟然出错了!!! 简直不敢相信!!
后面还把Jim的admincerts文件夹内容换成了msp的管理员的signcerts,结果还是出错。
不知道有没有大神能指导下,为什么普通用户就不能在cli下直接调用链码呀?

#####################################2019.09.08分割线#####################################
仔细的看了下crypto-config文件夹下的所有证书,发现所有的用户证书OU都是client!!!经过实验,client的标识的确能成功,所以作为用户来讲的话client和admin标识都可以在命令行下调用成功。不过现在还是不太清楚user和client的区别。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值