Я использую Hyperledger Fabric v1.2.Я пытаюсь создать цепной код для одного партнера, и у меня есть только одна организация и организация-заказчик, указанные в моем configtx.yaml для моей сети.Я не вносил никаких изменений в ACL в моем configtx.yaml, поэтому его значение установлено по умолчанию.
Когда я запускаю эту команду:
./peer chaincode instantiate -o orderer1.example.com:7050 -C devchannel -n jmo01 -v 1.0 -c '{"Args":["init","a", "100", "b","200"]}' -P "OR ('SampleOrgMSP.member')" --cafile /etc/hyperledger/fabric/msp/peer1/msp/cacerts/cert.pem
Выдает следующую ошибкув узле:
Error: could not assemble transaction, err Proposal response was not successful, error code 500, msg instantiation policy violation: signature set did not satisfy policy
Профили в configtx.yaml:
Profiles:
# SampleDevModeKafka defines a configuration that differs from the
# SampleDevModeSolo one only in that it uses the Kafka-based orderer.
SampleOrgGenesis:
<<: *ChannelDefaults
Orderer:
<<: *OrdererDefaults
OrdererType: kafka
Organizations:
- <<: *SampleOrg
Policies:
<<: *SampleOrgPolicies
Admins:
Type: Signature
Rule: "OR('SampleOrgMSP.member')"
Consortiums:
SampleConsortium:
Organizations:
- <<: *SampleOrg
Policies:
<<: *SampleOrgPolicies
Admins:
Type: Signature
Rule: "OR('SampleOrgMSP.member')"
MyChannel:
Consortium: SampleConsortium
Application:
<<: *ApplicationDefaults
Organizations:
- *SampleOrg
Раздел организаций в верхней части configtx.yaml:
Organizations:
- &SampleOrdererOrg
Name: SampleOrdererOrg
ID: SampleOrdererOrgMSP
MSPDir: /etc/hyperledger/msp/orderer1/msp
Policies:
Readers:
Type: Signature
Rule: "OR('SampleOrdererOrgMSP.member')"
Writers:
Type: Signature
Rule: "OR('SampleOrdererOrgMSP.member')"
Admins:
Type: Signature
Rule: "OR('SampleOrdererOrgMSP.admin')"
BlockValidation:
Type: Signature
Rule: "OR('SampleOrdererOrgMSP.member')"
- &SampleOrg
Name: SampleOrgMSP
ID: SampleOrgMSP
# MSPDir is the filesystem path which contains the MSP configuration.
MSPDir: /etc/hyperledger/org/msp
Policies: &SampleOrgPolicies
Readers:
Type: Signature
Rule: "OR('SampleOrgMSP.member')"
Writers:
Type: Signature
Rule: "OR('SampleOrgMSP.member')"
Admins:
Type: Signature
Rule: "OR('SampleOrgMSP.admin')"
AnchorPeers:
- Host: peer1.example.com
Port: 7051
- Host: peer2.example.com
Port: 7051
- Host: peer3.example.com
Port: 7051
Ядумая, что это как-то связано с тем, как я делаю команду создания экземпляров, и, возможно, у меня неправильно настроена политика.Одна из политик требует, чтобы конкретный тип пользователя org завершил создание экземпляра, но я не уверен, какой это, где находится его член или администратор, а затем какой org msp я должен указать.