Hyperledger Fabric 核心模块(7)Fabric-ca-client
fabric-ca-client 模塊通過相關(guān)的子命令完成賬號注冊、授權(quán)申請、證書撤銷等操作 。
1. 命令
? enroll :登記賬號 。
? gencrl :撤銷證書 。
? gencsr : 創(chuàng)建證書簽名 。
? getcacert 獲取 CA 鏈證書 。
? reenroll :重新登記賬號 。
? register :注冊一個新賬號 。
? revoke : 撤銷一個賬號 。
? version : 顯示版本信息 。
2. fabric-ca-client 模塊的參數(shù)選項
fabric-ca-client 模塊和 fabric-ca-server 模塊一樣,所有命令公用一組全局選項,不同的子命令需要的選項是不一樣的 。
2.1 基本管理
? --caname : CA 服務(wù)器名稱 。
? -H, --home : 客戶端的目錄,用來存放客戶端相關(guān)的文件(默認(rèn)值為”/root/.fabric-caclient”) 。
? -M, --mspdir :客戶端的賬號證書文件的目錄( default ”msp") 。
? -d,一debug :將客戶端的日志設(shè)置為 debug 模式 。
? -u, 一url: fabric-ca- server 的地址(默認(rèn)值為”http://localhost:7054”) 。
2.2 賬號登記
? --enrollment.attrs :賬號登記請求中的屬性( e . g. foo, bar:opt ) 。
? --enrollment.label :登記請求中 HSM 相關(guān)的標(biāo)簽 。
? --enrollment.profile : 登記請求中的 profile 。
2.3 賬號注冊
·…id. affiliation :賬號注冊時組織的部門信息 。
·一id.attrs :賬號注冊時的屬性列表( e.g. foo=foo 1, bar=barl ) 。
·一id.maxenrollments : 當(dāng)前注冊后可以進(jìn)行登記的次數(shù)( default -1 ) 。
.…id.name :賬號注冊時的用戶名 。
·…id . secret :賬號注冊的密碼 。
? --id.type :賬號注冊的類型,目前支持(’peer, app, user’),默認(rèn)值為”user"
2.4 證書吊銷
? -a,一revoke.aki : 注銷證書時需要的公鑰 。
? -e,一revoke.name : 注銷證書時的實體名稱 。
? -r, 一revoke.reason :注銷的原因 。
.s --revoke.serial :注銷證書的序列號
2.5 CA 證簽名
? --csr.cn: CA 簽名請求時,請求報文中的通用名 。
? --csr.hosts: CA 簽名請求時,請求報文中的主機名 。
? --csr.names: CA 簽名請求時,請求報文中的附加名稱(比如 C=CA, O=Org 1 ) 。
? --csr.serialnumber: CA 簽名請求時,請求報文中的序列號 。
? -m, 一myhost: CA 簽名請求時,請求報文中請求主機名稱,默認(rèn)值是本地主機 。
2.6 TLS 通信
? --tls.certfiles: TLS 通信模式下的證書文件, PEM 文件格式 。
? --tls.client.certfile: TLS 通信模式下客戶端的證書文件, PEM 文件格式 。
·一tls.client.keyfile: TLS 通信模式下客戶端的私鑰文件 。
3. fabric-ca-clien t 常用的命令
- 注冊新賬號
fabric - ca-c l 工 ent regi ster - - 工 d name peer2 - - id . type peer - - id . a f f 工 li a tio口
orgl.department l --工d .secret peer2wd -u http 😕/localhost :7 054 - 載入賬號信息
fabri c-ca-c l 工 e nt enroll -M /usr/fabric - testl/msp -u http 😕/peerl :peerlpw@
localhost 7054 - 獲取 CA 服務(wù)器的證書
fabric - ca-c l 工 e nt getcacert -u http 😕/localhost : 7054 - M /usr/fabric - t estl/msp
4. 將 fabric-ca-server 綁定到現(xiàn)有項目中
動態(tài)生成用戶賬號文件
step1.設(shè)置 fabric-ca-client 環(huán)境變量
fabric - ca-cl ient 在使用之前 需 要 創(chuàng) 建 - 個目 錄 ,該目錄存放 fabric-ca-client的賬號
(msp )文件,本例中使用的目錄如下所示 :
mkdir -p /opt/hyperledge r/fabr ic -client
目錄創(chuàng)建完成之后,利用管理員賬號和密碼注冊,獲取管理員賬號( msp )的證書文件 。
export FABRIC_ CA CLIENT HOME=/opt/hyperledger/fabric-ca-client
f a bri C-ca-client enroll u http : // admin : adminpw@localhost : 7054 -M
/opt/hyperle dg er/fabr 工 c clien t
step2. 注冊賬號
現(xiàn)在開始注冊一個用戶名為 usertest ,密碼為 user2wd 的賬號,注冊命令示例如下所示:
fabric-ca client register --id . name usertest --工d . type user --id . affiliation
orgl .depar tmentl - - i d . secre t user2wd -u h t t p://loc alhost : 7054
step3. 載入賬號
現(xiàn)在將上一步注冊的賬號 usertest 加載到本地,首先需要在本地創(chuàng)建要給目錄用來存放
從服務(wù)器下載的證書,目錄可以是任何目錄 。 本例的目錄如下所示:
mkdi r p /opt/hyperledge r/qklszznuser
在上述命令創(chuàng)建的目 錄 中, 登記賬號 usert巳st ,并將登記成功的賬號的相關(guān)文件保存到
指定目錄中 。 登記賬號的命令如下所示:
f a br ic c a client e口 roll u http 😕/usertest : user2wd@localhost : 7054 -M /opt/
hyperledger /qklszznu s er/msp
step4. 復(fù)制管理員簽名和公用 TLS 證書文件
復(fù)制管理賬號的簽名的命令如下所示:
mkdir /opt/hyperledger/qklszznuser/msp/admincerts
cp /opt / hy perledger c ommconfig/fabr 工 cc onfi g/c rypto - con fig/ p eerOr ga ni zati0os/orgl . qklszzn . com/users/Admin@orgl qklszzn . com/msp/s 工 gncerts/ * /opt/hyperledger/
qklszznuser/msp/admincerts
客戶端程序通過 fabric-ca-server 提供的 RESTAPI 接口完成賬號注冊 、 賬號登記等操作
總結(jié)
以上是生活随笔為你收集整理的Hyperledger Fabric 核心模块(7)Fabric-ca-client的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Hyperledger Fabric 核
- 下一篇: 区块链BaaS云服务(17)纸贵科技DI