Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In diesem Schnellstart-Lernprogramm erfahren Sie, wie Sie eine Anwendung in einer Azure Managed CCF (Managed CCF)-Ressource bereitstellen. Dieses Lernprogramm basiert auf der verwalteten CCF-Ressource, die in der Schnellstartanleitung erstellt wurde: Erstellen einer Azure Managed CCF-Ressource mithilfe des Lernprogramms zum Azure-Portal .
Voraussetzungen
- Python 3+.
- Die neueste Version des CCF Python-Pakets.
- OpenSSL auf einem Computer unter Windows oder Linux.
Herunterladen der Dienstidentität
Eine azure Managed CCF-Ressource hat eine eindeutige Identität, die als Dienstidentität bezeichnet wird, dargestellt durch ein Zertifikat und während der Ressourcenerstellung erstellt. Jeder einzelne Knoten, der Teil der Azure Managed CCF-Ressource ist, verfügt über sein selbstsigniertes Zertifikat, das von der Dienstidentität unterstützt wird, wodurch eine Vertrauensstellung dafür hergestellt wird.
Kunden werden empfohlen, das Dienstidentitätszertifikat herunterzuladen und es zu verwenden, um eine TLS-Verbindung herzustellen, wenn sie mit dem Dienst interagieren. Der folgende Befehl lädt das Zertifikat herunter und speichert es in service_cert.pem.
curl https://identity.confidential-ledger.core.azure.com/ledgerIdentity/confidentialbillingapp --silent | jq ' .ledgerTlsCertificate' | xargs echo -e > service_cert.pem
Bereitstellen der Anwendung
Hinweis
Ersetzen Sie beim Ausführen der Befehle auf einem Mac date -Is durch date +%FT%T%z.
Hinweis
In diesem Lernprogramm wird davon ausgegangen, dass das JavaScript-Anwendungsbundle mithilfe der hier verfügbaren Anweisungen erstellt wird.
- Übermitteln Sie das anwendungsbündel, das in set_js_app.json vorhanden ist, indem Sie einen Vorschlag erstellen.
$ 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') )
- Der nächste Schritt besteht darin, den Vorschlag durch Einreichung einer Abstimmung anzunehmen.
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
- Wiederholen Sie den obigen Schritt für jedes Mitglied in der verwalteten CCF-Ressource.
Nach Abschluss des Befehls wird die Anwendung in der verwalteten CCF-Ressource bereitgestellt und kann Transaktionen annehmen.