github.com/bestbeforetoday/fabric-ca@v2.0.0-alpha+incompatible/scripts/fvt/enroll.sh (about)

     1  #!/bin/bash
     2  
     3  #
     4  # Copyright IBM Corp. All Rights Reserved.
     5  #
     6  # SPDX-License-Identifier: Apache-2.0
     7  #
     8  
     9  FABRIC_CA="$GOPATH/src/github.com/hyperledger/fabric-ca"
    10  SCRIPTDIR="$FABRIC_CA/scripts/fvt"
    11  . $SCRIPTDIR/fabric-ca_utils
    12  RC=0
    13  
    14  while getopts "du:p:t:l:x:" option; do
    15    case "$option" in
    16       d)   FABRIC_CA_DEBUG="true" ;;
    17       x)   CA_CFG_PATH="$OPTARG" ;;
    18       u)   USERNAME="$OPTARG" ;;
    19       p)   USERPSWD="$OPTARG" ;;
    20       t)   KEYTYPE="$OPTARG" ;;
    21       l)   KEYLEN="$OPTARG" ;;
    22    esac
    23  done
    24  test -z "$CA_CFG_PATH" && CA_CFG_PATH="$HOME/fabric-ca"
    25  test -f "$CA_CFG_PATH" || mkdir -p $CA_CFG_PATH
    26  
    27  : ${FABRIC_CA_DEBUG="false"}
    28  : ${USERNAME="admin"}
    29  : ${USERPSWD="adminpw"}
    30  : ${KEYTYPE="ecdsa"}
    31  : ${KEYLEN="256"}
    32  
    33  test "$KEYTYPE" = "ecdsa" && sslcmd="ec"
    34  
    35  test -d "$CA_CFG_PATH/$USERNAME" || mkdir -p $CA_CFG_PATH/$USERNAME
    36  cat > $CA_CFG_PATH/$USERNAME/fabric-ca-client-config.yaml <<EOF
    37  csr:
    38    cn: $USERNAME
    39    keyrequest:
    40      algo: $KEYTYPE
    41      size: $KEYLEN
    42  EOF
    43  
    44  $FABRIC_CA_CLIENTEXEC enroll -u "http://$USERNAME:$USERPSWD@$CA_HOST_ADDRESS:$PROXY_PORT" -H $CA_CFG_PATH/$USERNAME
    45  RC=$?
    46  CLIENTCERT="$CA_CFG_PATH/$USERNAME/msp/signcerts/cert.pem"
    47  lastkey=$(ls -crtd $CA_CFG_PATH/$USERNAME/msp/keystore/* | tail -n1)
    48  test -n "$lastkey" && CLIENTKEY="$lastkey" || CLIENTKEY="$CA_CFG_PATH/$USERNAME/msp/keystore/key.pem"
    49  $($FABRIC_CA_DEBUG) && printAuth "$CLIENTCERT" "$CLIENTKEY"
    50  exit $RC