Hyperledger Fabric - Как ограничить Org2 для установки / создания экземпляра / обновления цепного кода для канала? - PullRequest
1 голос
/ 13 марта 2019

Консорциум моей фабричной сети (в configtx.yaml) имеет две организации: ORG1 и ORG2. ORG1 имеет 4 основных узла, а ORG2 - только 1. Единственная цель ORG2 состоит в том, чтобы иметь копию книги (для целей аудита).

Все они присоединились к одному каналу, и, скажем, администратор ORG1 уже установил / установил версию цепного кода 0.1

Теперь администратор ORG2 также сможет «обновить одноранговый код цепочки» до версии 0.2 с тем же именем цепного кода, и когда предложение достигнет одного из узлов ORG1, оно скажет что-то вроде:

endorsement failure during invoke. response: status:500 message:"cannot retrieve package for chaincode [chaincode name]/0.2, error open /var/hyperledger/production/chaincodes/[chaincode name]/0.2: no such file or directory"

Как мы полностью запрещаем ORG2 обновлять версию цепного кода? , чтобы только администратор ORG1 мог выполнять административные операции?

Я искал ACL, но, похоже, административные операции не контролируются настройками ACL.

1 Ответ

2 голосов
/ 14 марта 2019

После исследования мы выяснили, что можем установить это в политике создания экземпляров для пакета с цепочкой кодов.

см. Ниже документ по ткани:

https://hyperledger -fabric.readthedocs.io / а / релиз-1,4 / команды / peerchaincode.html # одноранговой chaincode-пакет

с флагом -i вы можете установить политику создания экземпляров при упаковке цепного кода. Тогда только организации, разрешенные в политике, смогут создавать или обновлять код цепи на канале

...