Hyperledger Fabric 组织 MSP 中 MSP 的自定义详细信息(国家、州、地区)
Custom Details(Country, State, Locality) for MSP in Organisation MSP of Hyperledger Fabric
Hyperledger Fabric Documentation 声明我们可以添加其他参数,即组织的规范和 CA。该示例显示可以注释掉其他代码以提供值。
我想做什么:
- 我需要在组织的 X509 证书中提供国家、州、地区的自定义值。
- 我正在使用 "cryptogen" 工具生成证书。
以下是来自 crypto-config.yaml 文件的组织片段:
-&Org1
Name: Org1MSP
ID: Org1MSP
MSPDir: crypto-config/peerOrganizations/org1.example.com/msp
CA:
Hostname: ca
Country: Westros
Province: North
Locality: Winterfell
OrganizationalUnit: HouseStark
StreetAddress: NorthernStreet
PostalCode: 30000
Policies:
Readers:
Type: Signature
Rule: "OR('Org1MSP.admin', 'Org1MSP.peer', 'Org1MSP.client')"
Writers:
Type: Signature
Rule: "OR('Org1MSP.admin', 'Org1MSP.client')"
Admins:
Type: Signature
Rule: "OR('Org1MSP.admin')"
AnchorPeers:
- Host: peer0.org1.example.com
Port: 7051
我在生成证书时遇到的错误:
2019-01-09 13:44:50.557 IST [common/tools/configtxgen/localconfig] Load -> PANI 003 Error unmarshaling config into struct: 3 error
(s) decoding:
- 'Organizations[1]' has invalid keys: CA
- 'Profiles[TwoOrgsChannel].Application.Organizations[0]' has invalid keys: CA
- 'Profiles[TwoOrgsOrdererGenesis].Consortiums[SampleConsortium].Organizations[0]' has invalid keys: CA
我尝试过的:
- 首先,我尝试了上面的配置,结果出错。
- 又看了cryptogen工具的用法。我曾经
cryptogen showtemplate
检查用于生成证书的模板。它的格式与我的 crypto-config.yaml 文件相似。
- 保持配置简单,即 w/o CA 详细信息,我启动了网络,进入 fabric-ca-server 容器并更新了
fabric-ca-server-config.yaml
以提供 CA 的值。这导致了其他错误。我假设这是因为我使用 cryptogen 使用一些 X CA 配置生成了证书,而在 运行 上我正在放置一些 Y CA 配置。
有没有我遗漏或做错了什么?
我重新安装了 fabric 1.4 的二进制文件并在 crypto-config.yaml 中定义了以下内容:
# Setting up orderer of the network
OrdererOrgs:
- Name: Orderer
Domain: example.com
CA:
Country: IN
Province: Karnataka
Locality: Bengaluru
Specs:
- Hostname: orderer
# Setting up peer orgs of the network
PeerOrgs:
- Name: Org1
Domain: org1.example.com
EnableNodeOUs: true
CA:
Country: IN
Province: Karnataka
Locality: Bengaluru
# Template count is the number of peer nodes for this organization
Template:
Count: 2
Users:
Count: 1
我为用于 CSR 的 SubjectDN 提供了错误的值。
Hyperledger Fabric Documentation 声明我们可以添加其他参数,即组织的规范和 CA。该示例显示可以注释掉其他代码以提供值。
我想做什么:
- 我需要在组织的 X509 证书中提供国家、州、地区的自定义值。
- 我正在使用 "cryptogen" 工具生成证书。
以下是来自 crypto-config.yaml 文件的组织片段:
-&Org1 Name: Org1MSP ID: Org1MSP MSPDir: crypto-config/peerOrganizations/org1.example.com/msp CA: Hostname: ca Country: Westros Province: North Locality: Winterfell OrganizationalUnit: HouseStark StreetAddress: NorthernStreet PostalCode: 30000 Policies: Readers: Type: Signature Rule: "OR('Org1MSP.admin', 'Org1MSP.peer', 'Org1MSP.client')" Writers: Type: Signature Rule: "OR('Org1MSP.admin', 'Org1MSP.client')" Admins: Type: Signature Rule: "OR('Org1MSP.admin')" AnchorPeers: - Host: peer0.org1.example.com Port: 7051
我在生成证书时遇到的错误:
2019-01-09 13:44:50.557 IST [common/tools/configtxgen/localconfig] Load -> PANI 003 Error unmarshaling config into struct: 3 error (s) decoding:
- 'Organizations[1]' has invalid keys: CA
- 'Profiles[TwoOrgsChannel].Application.Organizations[0]' has invalid keys: CA
- 'Profiles[TwoOrgsOrdererGenesis].Consortiums[SampleConsortium].Organizations[0]' has invalid keys: CA
我尝试过的:
- 首先,我尝试了上面的配置,结果出错。
- 又看了cryptogen工具的用法。我曾经
cryptogen showtemplate
检查用于生成证书的模板。它的格式与我的 crypto-config.yaml 文件相似。 - 保持配置简单,即 w/o CA 详细信息,我启动了网络,进入 fabric-ca-server 容器并更新了
fabric-ca-server-config.yaml
以提供 CA 的值。这导致了其他错误。我假设这是因为我使用 cryptogen 使用一些 X CA 配置生成了证书,而在 运行 上我正在放置一些 Y CA 配置。
有没有我遗漏或做错了什么?
我重新安装了 fabric 1.4 的二进制文件并在 crypto-config.yaml 中定义了以下内容:
# Setting up orderer of the network
OrdererOrgs:
- Name: Orderer
Domain: example.com
CA:
Country: IN
Province: Karnataka
Locality: Bengaluru
Specs:
- Hostname: orderer
# Setting up peer orgs of the network
PeerOrgs:
- Name: Org1
Domain: org1.example.com
EnableNodeOUs: true
CA:
Country: IN
Province: Karnataka
Locality: Bengaluru
# Template count is the number of peer nodes for this organization
Template:
Count: 2
Users:
Count: 1
我为用于 CSR 的 SubjectDN 提供了错误的值。