Dela via


Snabbstart: Distribuera ett JavaScript-program till en Azure Managed CCF-resurs

I den här snabbstartsguiden får du lära dig hur du distribuerar ett program till en Azure Managed CCF-resurs (Managed CCF). Den här självstudien bygger på den hanterade CCF-resursen som skapades i snabbstarten : Skapa en Azure Managed CCF-resurs med hjälp av självstudien om Azure-portalen .

Förutsättningar

  • OpenSSL på en dator som kör Windows eller Linux.

Ladda ned tjänstidentiteten

En Azure Managed CCF-resurs har en unik identitet som kallas tjänstidentitet. Det representeras av ett certifikat och skapas när resursen skapas. Varje enskild nod som ingår i Azure Managed CCF-resursen har sitt självsignerade certifikat, som stöds av tjänstidentiteten, som upprättar förtroende för den.

Kunder rekommenderas att ladda ned tjänstidentitetscertifikatet och använda det för att upprätta en TLS-anslutning när de interagerar med tjänsten. Följande kommando laddar ned certifikatet och sparar det i service_cert.pem.

curl https://identity.confidential-ledger.core.azure.com/ledgerIdentity/confidentialbillingapp --silent | jq ' .ledgerTlsCertificate' | xargs echo -e > service_cert.pem

Distribuera programmet

Kommentar

När du kör kommandona på en Mac ersätter du date -Is med date +%FT%T%z.

Kommentar

Den här självstudien förutsätter att JavaScript-programpaketet skapas med hjälp av anvisningarna här.

  1. Skicka programpaketet som finns i set_js_app.json genom att skapa ett förslag.
$ proposalid=$( (ccf_cose_sign1 --content set_js_app.json --signing-cert member0_cert.pem --signing-key member0_privk.pem --ccf-gov-msg-type proposal --ccf-gov-msg-created_at `date -Is` | curl https://confidentialbillingapp.confidential-ledger.azure.com/gov/proposals -H 'Content-Type: application/cose' --data-binary @- --cacert service_cert.pem | jq -r '.proposal_id') )
  1. Nästa steg är att godkänna förslaget genom att lägga fram en omröstning.
cat vote_accept.json
{
  "ballot": "export function vote (rawProposal, proposerId)\n
  {\n
    // Accepts any proposal\n
    return true;\n
  }"
}

ccf_cose_sign1 --content vote_accept.json --signing-cert member0_cert.pem --signing-key member0_privk.pem --ccf-gov-msg-type ballot --ccf-gov-msg-created_at `date -Is` --ccf-gov-msg-proposal_id $proposalid | curl https://confidentialbillingapp.confidential-ledger.azure.com/gov/proposals/$proposalid/ballots -H 'Content-Type: application/cose' --data-binary @- --cacert service_cert.pem
  1. Upprepa ovanstående steg för varje medlem i den hanterade CCF-resursen.

När kommandot har slutförts distribueras programmet till den hanterade CCF-resursen och är redo att acceptera transaktioner.

Nästa steg