2017-01-19 2 views
0

HFC SDK의 샘플 코드를 검토 중이며 사용자를 관리하는 방법을 보았습니다. Hyperledger Fabric Client (HFC)에서 새로운 사용자 (속성 포함)를 어떻게 등록합니까?

다음과 같은 기능을 사용하는 기존 사용자 등록하려면 :

chain.enroll 

등록을 다음과 같은 기능을 사용하여 새 사용자 등록 :

chain.registerAndEnroll 

그러나, 샘플 코드를 제공하지 않은를 등록 전용 함수의 예 :

chain.register 

나는 그것을 이해한다. Chain.enroll과 chain.registerAndEnroll은 모두 함수가 호출 된 시스템에 사용자 키/인증서를 저장합니다.

관리자가 새로운 사용자 (예 : userA)를 만들려면 userA의 컴퓨터가 아니라 관리자의 컴퓨터에 키/인증서가 저장되므로 chain.registerAndEnroll 함수를 사용할 수 없습니다. 등록뿐만 아니라 등록. 따라서 레지스터 만 필요합니다.

또한 membersrvc.yaml에 정의 할 수있는 속성과 비슷한 HFC를 사용하는 사용자에게 속성을 추가하려면 어떻게합니까?

답변

1

불행히도 hfc API doc에 대한 온라인 링크를 찾을 수 없습니다 (필요한 경우 문서를 로컬로 빌드 할 수 있음).

//create some attributes 
var attributes = [{name:'foo',value:'bar'}]; 
var registrationRequest = { 
    roles: [ role ], 
    enrollmentID: name, 
    affiliation: "bank_a", 
    attributes: attributes, 
    registrar: registrar 
}; 

chain.register(registrationRequest, function(err, enrollmentPassword) { 
    //your code here 

}

+0

감사 @Gari :

말했다되고 그건

는 다음 RegistrationRequest 오브젝트를하고 chain.register 기능을 사용하면 나중에 새 사용자를 등록 할 때 사용하는 등록 비밀/비밀 번호를 반환있다 . 이것은 매우 도움이됩니다. 나는 이것을 시도 할 것이다. chain.register 함수를 사용하는 방법을 올바르게 이해했는지 확인하고 싶습니다.이 함수는 일반 사용자가 아니라 관리자가 사용합니다. enrollmentID 및 enrollmentPassword는 관리자가 전자 메일 (또는 다른 방법)을 통해 사용자에게 전송됩니다. 사용자는 chain.enroll 함수를 사용하여 개인 키/인증서 파일을 가져옵니다. 이 방법에서는 악의적 인 관리자가 사용자를 대신하여 등록을 시도 할 수 있지만 chain.enroll은 한 번만 호출 할 수 있기 때문에 사용자가이를 감지합니다. 이 올바른지? –