2017-06-05 88 views
0

我正在使用RESTful API與分類賬進行通信。我使用Passport爲API添加了一些保護。未提供註冊ID或註冊密鑰

現在我想爲網絡中的特定參與者頒發身份。 CLI命令工作得很好。

composer identity issue -n 'epd' -i admin -s adminpw -u "myid" -a "nl.epd.blockchain.Patient#myid"

但每當我嘗試使用基於REST的API調用它口口聲聲說:

沒有登記身份證或登記的祕密已經提供

我送看起來有效載荷如下所示

{ 
    "participant": "nl.epd.blockchain.Patient#myid", 
    "userID": "myid", 
    "options": { 
    "enrollmentID" : "admin", 
    "enrollmentSecret" : "adminpw" 
    } 
} 

在啓動我使用下面的代碼REST服務器:

composer-rest-server -n epd -p defaultProfile -i admin -s adminpw -N never -P 3000 -S true 

所以我想我的有效載荷不正確,因爲它無法找到enrollmentid和祕密。那麼有效載荷的正確格式是什麼?

回答

1

您不需要將enrollmentID和enrollmentSecret作爲有效負載的一部分。那些通過composer-rest-server傳入。

以下是關於爲業務網絡啓用REST身份驗證的一些說明。 https://hyperledger.github.io/composer/integrating/enabling-rest-authentication.html

我認爲你缺少的步驟是Adding a Blockchain identity to the default wallet

+0

我沒有完成所有這些步驟。但該章假定區塊鏈標識已經添加到網絡中。它沒有解釋如何創建身份。只有如何設置它。 「這個例子將假設你已經向參與者發出了區塊鏈身份alice1 org.acme.sample.SampleParticipant#[email protected]」 – Jamie

+0

添加參與者和頒發身份在這裏的文檔中描述:https://hyperledger.github .IO /作曲/不穩定/管理/ participantsandidentities.html –