如何解决结构 CA 请求注册失败,出现错误 [[ { 代码:71,消息:'授权失败' } ]]
无法为组织制造商注册用户名 NpPharma,使用::fabric-ca 请求注册失败,错误为 [[ { 代码:71,消息:'授权失败'} ]]
connection-manufacturer.js ->
{
"name": "artifacts-test-manufacturer","version": "1.0.0","client": {
"organization": "Manufacturer","connection": {
"timeout": {
"peer": {
"endorser": "300"
}
}
}
},"organizations": {
"Manufacturer": {
"mspid": "ManufacturerMSP","peers": [
"peer0.manufacturer.example.com"
],"certificateAuthorities": [
"ca.manufacturer.example.com"
]
}
},"peers": {
"peer0.manufacturer.example.com": {
"url": "grpcs://localhost:7051","tlsCACerts": {
"pem": "-----BEGIN CERTIFICATE-----\nMIICFjCCAb2gAwIBAgIUfSBE3AfoXkd1J2DH099Ph7qDRCswCgYIKoZIzj0EAwIw\naDELMAkGA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRQwEgYDVQQK\nEwtIeXBlcmxlZGdlcjEPMA0GA1UECxMGRmFicmljMRkwFwYDVQQDExBmYWJyaWMt\nY2Etc2VydmVyMB4XDTIxMDYyODA1MDcwMFoXDTM2MDYyNDA1MDcwMFowaDELMAkG\nA1UEBhMCVVMxFzAVBgNVBAgTDk5vcnRoIENhcm9saW5hMRQwEgYDVQQKEwtIeXBl\ncmxlZGdlcjEPMA0GA1UECxMGRmFicmljMRkwFwYDVQQDExBmYWJyaWMtY2Etc2Vy\ndmVyMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEYUwcogIc3Ak1dOhOzMckSIjR\ndLKVqTbZ0QWjLkDcOvq+oQh7cs+CyD5s1R3/1ZODwurBK3lCXVlniqLNworKkqNF\nMEMwDgYDVR0PAQH/BAQDAgEGMBIGA1UdEwEB/wQIMAYBAf8CAQEwHQYDVR0OBBYE\nFOUbZrmE75EWUa81CpKexV8IIDDWMAoGCCqGSM49BAMCA0cAMEQCIGAHQ9ml2+br\n28ccvSIN5wSiKFL7l//Hs9IFOcL9M4YSAiAxnXMCEoakRT3sih16KDTU8FV6ezIa\nFTDhFDO5DzeKVg==\n-----END CERTIFICATE-----\n"
},"grpcOptions": {
"ssl-target-name-override": "peer0.manufacturer.example.com","hostnameOverride": "peer0.manufacturer.example.com"
}
}
},"certificateAuthorities": {
"ca.manufacturer.example.com": {
"url": "https://localhost:7054","caName": "ca.manufacturer.example.com","httpOptions": {
"verify": false
}
}
}
}
注册用户的函数
const ca = new FabricCAServices(caInfo.url,{ trustedRoots: caTLSCACerts,verify: false },caInfo.caName);
const secret = await ca.register({
affiliation: 'manufacturer.department1',enrollmentID: username,role: 'client'
},adminUser);
解决方法
首先,您需要确保已创建从属关系 manufacturer.department1
。在 Fabric CA 初始化并运行后,您可以通过将其包含在 fabric-ca-server-config.yaml
文件中或通过 CLI(或 SDK 之一)进行创建来创建从属关系。
要将其包含在您的 config 中,您需要添加一个像
affiliations:
manufacturer:
- department1
到您的 Fabric CA 服务器配置文件。
至create the affiliation with the CLI:
fabric-ca-client affiliation add manufacturer.department1
您还需要确保管理员用户的 hf.AffiliationMgr
属性设置为 true。管理员还必须将其隶属关系设置为 ""
(意味着管理员可以管理所有隶属关系)或特定隶属关系或其任何父级。默认管理员用户可以管理所有从属关系。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。