Freigeben über


Aktivieren von Mitgliedern in einer Azure Managed CCF-Ressource

In diesem Leitfaden erfahren Sie, wie Sie die Mitglieder in einer Azure Managed CCF (Managed CCF)-Ressource aktivieren. Dieses Lernprogramm basiert auf der verwalteten CCF-Ressource, die in der Schnellstartanleitung erstellt wurde: Erstellen einer Azure Managed CCF-Ressource mithilfe des Lernprogramms Azure-Portal.

Voraussetzungen

Herunterladen der Dienstidentität

Eine von Azure verwaltete CCF-Ressource verfügt über eine eindeutige Identität, die als Dienstidentität bezeichnet wird. Sie wird durch ein Zertifikat dargestellt 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

Aktivieren von Membern

Wenn ein Mitglied einer verwalteten CCF-Ressource hinzugefügt wird, befinden sie sich im akzeptierten Zustand. Sie können erst dann an der Governance teilnehmen, wenn sie aktiviert sind. Dazu muss das Mitglied bestätigen, dass sie mit dem Status des Dienstes zufrieden sind (z. B. nach der Überwachung der aktuellen Verfassung und der derzeit vertrauenswürdigen Knoten).

  1. Das Mitglied muss den neuesten Statusdigest aktualisieren und abrufen. Dabei bestätigt das neue Mitglied, dass sie mit dem aktuellen Status des Dienstes zufrieden sind.
curl https://confidentialbillingapp.confidential-ledger.azure.com/gov/ack/update_state_digest -X POST --cacert service_cert.pem --key member0_privk.pem --cert member0_cert.pem --silent | jq > request.json
cat request.json
{
    "state_digest": <...>
}

Hinweis

Ersetzen Sie beim Ausführen der Befehle auf einem Mac date -Is durch date +%FT%T%z.

  1. Das Mitglied muss den Statusdigest mithilfe des ccf_cose_sign1 Hilfsprogramms signieren. Dieses Hilfsprogramm wird zusammen mit dem CCF Python-Paket installiert.
ccf_cose_sign1 --ccf-gov-msg-type ack --ccf-gov-msg-created_at `date -Is` --signing-key member0_privk.pem --signing-cert member0_cert.pem --content request.json | \
 curl https://confidentialbillingapp.confidential-ledger.azure.com/gov/ack --cacert service_cert.pem --data-binary @- -H "content-type: application/cose"
  1. Nach Abschluss des Befehls ist das Mitglied aktiv und kann an der Governance teilnehmen. Die Mitglieder können mit dem folgenden Befehl angezeigt werden.
curl --cacert service_cert.pem https://confidentialbillingapp.confidential-ledger.azure.com/gov/members | jq
{
  "710c4d7ce6a70a89137b39170cd5c48f94b4756a66e66b2242370111c1c47564": {
    "cert": "-----BEGIN CERTIFICATE-----\nMIIB9zCCAX2gAwIBAgIQW20I1iR...l8Uv8rRce\n-----END CERTIFICATE-----",
    "member_data": {
      "is_operator": true,
      "owner": "Microsoft Azure"
    },
    "public_encryption_key": "-----BEGIN PUBLIC KEY-----\nMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMI...n3QIDAQAB\n-----END PUBLIC KEY-----\n",
    "status": "Active"
  },
  "f9ea379051e5292b538ff2a3dc97f1bb4d5046f12e2bdbf5b8e3acc4516f34e3": {
    "cert": "-----BEGIN CERTIFICATE-----\nMIIBuzCCAUKgAwIBAgIURuSESLma...yyK1EHhxx\n-----END CERTIFICATE-----",
    "member_data": {
      "group": "",
      "identifier": "member0"
    },
    "public_encryption_key": null,
    "status": "Active"
  }
}

Nächste Schritte