I'd like to re-issue enrollId for my participant of fabric composer 0.8.0.
so, firstly I've revoked my already issued id 'hanako'.
vagrant#ubuntu-1404:~/git/composerPoCTool/tools/composer$ composer identity revoke -n "drive-manager-network" -i admin
-s Xurw3yU9zI0l -u hanako
The identity 'hanako' was revoked and can no longer be used to connect to the business network.
Command completed successfully.
Command succeeded
Next, I've issued id 'hanako' one more time for my participant.
but I got 'User is already registered' Error...
Is there a way to re-issue for same id on fabric composer?
vagrant#ubuntu-1404:~/git/composerPoCTool/tools/composer$ composer identity issue -n "drive-manager-network" -i admin -
s Xurw3yU9zI0l -u hanako -a "org.denso.drive.Person#actorId:2"
Error: User is already registered
Command failed.
Command succeeded
You cannot re-use or re-issue ids -- this is a Fabric limitation.
Related
image 1 image 2
From the following link
https://hyperledger.github.io/composer/reference/composer.identity.issue.html
composer identity issue -c admin#mron-business-network -fsupplier -u suppid -a "resource:org.mron.Supplier#S001" -x false
Issue identity and create Network Card for: suppid
✖ Issuing identity. This may take a few seconds...
Error: fabric-ca request register failed with errors [[{"code":400,"message":"Authorization failure"}]]
Command failed
same message posted on Rocketchat earlier. It would appear that the admin id in your card is not the one currently known to the CA server. After import using (for example) composer card import -f <filename>, you need to connect to the business network (or use composer network ping -c admin#mron-business-network to connect) - for the credentials (key/certificate) to be downloaded to the wallet from the CA server. You can then verify this with a composer card list --name admin#mron-business-network and see the 'Credentials set' message for the card in question.
I have generated Composer identity via.
$ composer identity issue -p hlfv1 -n parcel-network -i admin -s adminpw -u administrator -a '<namespace>#administrator'
An identity was issued to the participant '<namespace>#administrator'
The participant can now connect to the business network with the following details:
userID = administrator
userSecret = kwrDcuzuGvre
Command succeeded
Now, how do I create "credentials" to connect to business network ?
The possible work around is to download the wallet, and then create credentials via "composer identity import". But I think this is not correct way.
Thanks !
There is a typo in the second command, adminstrator (in composer network ping) vs the issued identity administrator.
After the update to 0.14, I am no more able to connect to the chain from the cli
composer network ping -p hlfv1 -n basic-sample-network -i admin -s adminpw
or
composer-rest-server -p hlfv1 -n basic-sample-network -i admin -s adminpw -N never
I have the following error
Error: Error trying to ping. Error: Error trying to query business network.
Error: chaincode error (status: 500, message: Error: The current identity has not been registered: admin)
All composer component were updated to 0.14, and the test was made with basic-sample-network. For information, npm test on this exemple was perfectly.
OS: Ubuntu
Please confirm that you have read the 0.14.0 release notes, particularly the "How to deal with this change" section:
https://github.com/hyperledger/composer/releases/tag/v0.14.0
You need to update your ACLs and redeploy your network, binding a network admin participant.
There are two ways for specifying the business network administrators
on the command line: Note: This option is the one most users will
want! When running composer network deploy and composer network start,
in addition to the normal parameters you would use, you should also
include -A admin -S to bind the admin identity as a network admin
participant. If you don't do this, the identity you use to deploy the
business network, usually PeerAdmin, will be bound into the business
network as a business network administrator, and this is probably not
what you want.
I have v0.8.0 of hyperledger composer installed and when I try to deploy the business network using the following command I get an install chaincode error
composer network deploy -a test.bna -p hlfv1 -i admin -s adminpw
And the response is
Error: error trying to deploy. Error: error trying install chaincode. Error
What is the problem ?
The security model changed after hyperledger v1.0.0-alpha1. Now peers have the concept of Admin users. The userid 'admin' is a userid controlled and owned by the certificate authority server that is provided as part of the fabric composer development hyperledger fabric and has no authority on the Peer.
The Development fabric pre-loads the peer's Admin id into the KeyValStore defined by the profile 'hlfv1' and calls it PeerAdmin. This is the userid you must specify in order to deploy a business network onto the peer.
As this user has already preloaded it doesn't have a secret but hyperledger composer currently requires a secret to be specified. It doesn't matter what you specify for the secret so long as you specify something. So the deploy command looks like
composer network deploy -a test.bna -p hlfv1 -i PeerAdmin -s anything
I am following steps in https://fabric-composer.github.io/managing/identity-issue.html to check the identity issuing for participants. I get no errors and when executing:
composer identity issue -n 'mychain-network' -i WebAppAdmin -s DJY27pEnl16d -u user1 -a "com.example.model.Owner#userid"
I get correctly:
The participant can now connect to the business network with the following details:
userID = user1
userSecret = kJoWHaYCxnes
The problem is that later I don't get the participant when pinging:
$ composer network ping -n 'mychain-network' -i user1 -s kJoWHaYCxnes
The connection to the network was successfully tested:
version = 0.5.5
participant = <no participant found>
Command completed successfully.
Am I missing something? Thanks.
In order for this to work with fabric v0.6, you need to start up the membership service with the following environment variable
MEMBERSRVC_CA_ACA_ENABLED=true
easiest way to do this is to update your docker compose file, for example
membersrvc:
image: hyperledger/fabric-membersrvc
ports:
- '7054:7054'
environment:
- MEMBERSRVC_CA_ACA_ENABLED=true
command: membersrvc
your example should then have the participant field with the correct value.