#security #blockchain #hyperledger #hyperledger-fabric
#Безопасность #блокчейн #гиперледж #hyperledger-ткань
Вопрос:
У меня есть вопрос относительно переменных среды, которые передаются через файл docker-compose.
У меня есть цепной код, который выполняет проверку безопасности, когда безопасность включена. Он проверяет, включена ли безопасность через ядро.API SecurityEnabled(). Я включаю / отключаю безопасность с помощью docker-compose env. переменная CORE_SECURITY_ENABLED.
Это прекрасно работает в режиме разработки. Однако, когда я развертываю цепной код в режиме, отличном от режима разработки, я получаю ядро.SecurityEnabled() как false, хотя моя переменная env передается как true. Я осмотрел контейнеры docker. Контейнер Docker, выполняющий одноранговый узел, возвращает переменную env CORE_SECURITY_ENABLED=true по команде env. Однако контейнер docker, в котором выполняется цепной код, не имеет переменной env CORE_SECURITY_ENABLED. Это будет набирать ценность из ядра.yaml, который установлен как false.
Соответствует ли это дизайну? В производственном режиме мы должны вносить изменения в ядро.файл yaml вместо того, чтобы зависеть от переменной env, передаваемой через docker-compose?
Комментарии:
1. Ниоткуда нет ответа, поэтому возникла проблема в hyperledger Jira FAB-1188
Ответ №1:
Я использую docker-compose, как указано ниже, чтобы получить CORE_SECURITY_ENABLED=true / false . Вы пробовали указывать переменные среды таким образом?
membersrvc:
image: hyperledger/fabric-membersrvc
ports:
- "7054:7054"
command: membersrvc
vp0:
image: hyperledger/fabric-peer
ports:
- "8085:7050"
- "8080:7053"
- "30303:30303"
- "30304:30304"
environment:
- CORE_PEER_ADDRESSAUTODETECT=true
- CORE_SECURITY_ENABLED=true
- CORE_SECURITY_PRIVACY=true
- CORE_VM_ENDPOINT=http://172.17.0.1:2375
- CORE_PEER_PKI_ECA_PADDR=membersrvc:7054
- CORE_PEER_PKI_TCA_PADDR=membersrvc:7054
- CORE_PEER_PKI_TLSCA_PADDR=membersrvc:7054
- CORE_LOGGING_LEVEL=DEBUG
- CORE_PEER_ID=vp0
- CORE_SECURITY_ENROLLID=test_vp0
- CORE_SECURITY_ENROLLSECRET=MwYpmSRjupbT
links:
- membersrvc
command: sh -c "sleep 35; peer node start --logging-level=DEBUG"
Если вы получили ответ на свой запрос от FAB jira, пожалуйста, проигнорируйте это сообщение.