Kanäle verwalten
Dieses Thema enthält Informationen zum Verwalten der Kanäle in Ihrem Netzwerk, wie das Erstellen und Anzeigen von Kanälen, das Verknüpfen von Peers und das Festlegen und Ankern von Peers, das Arbeiten mit Policys und Access-Control-Listen und das Zuordnen von Orderern zu einem Kanal.
Was sind Kanäle?
Kanäle partitionieren und isolieren Peers und Ledger-Daten, um private und vertrauliche Transaktionen im Blockchain-Netzwerk bereitzustellen.
- Gleichgestellte Mitarbeiter
- Ein gemeinsames Buch
- Auf dem Kanal bereitgestellte Chaincodes
- Ein oder mehrere Ordering Service-Knoten
- Kanal-Policy-Definitionen und ACLs, in denen die Definitionen angewendet werden
Jeder Peer, der einem Channel beitritt, hat seine eigene Identität, die ihn bei den Channel-Peers und -Services authentifiziert. Auch wenn Peers zu mehreren Kanälen gehören können, sind die Informationen zu Transaktionen, Buchstatus und Kanalmitgliedschaft auf Peers in jedem Kanal beschränkt.
Mit der Oracle Blockchain Platform-Konsole oder dem Hyperledger Fabric-SDK können Sie Kanäle in Ihrem Blockchain-Netzwerk erstellen. Siehe Kanäle anzeigen.
Kanäle anzeigen
Mitglieder in Ihrem Netzwerk verwenden Kanäle, um Blockchain-Transaktionsinformationen privat zu kommunizieren.
Kanal erstellen
Sie können dem Netzwerk Kanäle hinzufügen und angeben, welche Mitglieder den Kanal verwenden können und welche Peers dem Kanal beitreten können. Sie können keine Kanäle löschen.
Sie müssen Administrator sein, um diese Aufgabe abzuschließen.
-
Stellen Sie einen Chaincode auf dem Kanal bereit. Siehe Chaincode bereitstellen.
-
Wenn das Netzwerk Teilnehmer enthält, verwenden diese Teilnehmer ihre Konsolen, um Mitglieder-Peers dem Kanal beizutreten. Siehe Peer zu einem Kanal beitreten.
Buchaktivität eines Kanals anzeigen
Mit dem Buch können Sie Übersichtsinformationen und Laufzeitstatistiken für Transaktionen in einem bestimmten Kanal suchen.
Liste der Vertriebskanalorganisationen anzeigen oder aktualisieren
Sie können die Liste der Organisationen anzeigen, die Zugriff auf den Kanal haben. Wenn Sie den Kanal erstellt haben, können Sie die Berechtigungen einer Organisation für den Kanal ändern und Organisationen zum Kanal hinzufügen oder daraus entfernen
Einer Gegenstelle zu einem Kanal beitreten
Sie können einem Kanal einen Peerknoten hinzufügen, damit der Knoten damit private Transaktionsinformationen mit anderen Peerknoten im Kanal austauschen kann.
-
Wenn Sie einen Kanal erstellen, geben Sie an, welche lokalen Peerknoten dem Kanal beitreten können.
-
Wenn Sie ein Netzwerk erstellen, das einen Teilnehmer enthält, können Sie den Teilnehmer als Mitglied im Kanal auswählen. Sie können den Teilnehmer auch hinzufügen, nachdem der Kanal erstellt wurde.
-
Ihre Instanz verfügt über mehrere Availability-Domains oder Faultdomains. Oracle empfiehlt, dass Sie einen Peer von jeder Partition mit dem Kanal verbinden. Wenn ein Worker-Knoten nicht verfügbar ist, ist der Kanal weiterhin für Bestätigungen und Commits verfügbar. Um zu bestimmen, in welcher Domain sich ein Peer befindet, wählen Sie im Menü Weitere Aktionen die Option AD-Informationen anzeigen aus, um die Informationen zur Availability-Domain anzuzeigen.
- Sie können maximal sieben Peers aus jeder Domain beitreten.
Siehe Kanal erstellen.
Sie müssen Administrator sein, um diese Aufgabe auszuführen.
Anker-Peer hinzufügen
Jedes Element, das einen Kanal verwendet, muss mindestens einen Anker-Peer angeben. Anker-Peers sind primäre Netzwerkkontaktpunkte und werden zum Erkennen und Kommunizieren mit anderen Netzwerk-Peers auf dem Kanal verwendet.
Sie können einen oder mehrere Peers in Ihrer Organisation als Anker-Peer auf einem Kanal festlegen. Bei einem High Availability-Netzwerk können Sie zwei oder mehr Anker-Peers angeben. Alle Mitglieder, die den Netzwerkkanal verwenden, müssen ihre Konsole verwenden, um einen oder mehrere ihrer Peerknoten als Anker-Peers zu kennzeichnen.
Sie müssen Administrator sein, um diese Aufgabe auszuführen.
Anker-Peer ändern oder entfernen
Sie können die Anker-Peers eines Kanals ändern oder entfernen. Anker-Peers sind primäre Netzwerkkontaktpunkte und werden zum Erkennen und Kommunizieren mit anderen Netzwerk-Peers auf dem Kanal verwendet.
Bevor Sie die Anker-Peers des Kanals ändern oder entfernen, beachten Sie die folgenden Informationen:
- Um über den Kanal zu kommunizieren, müssen Sie einen oder mehrere Peers in Ihrer Organisation als Anker-Peer angeben.
- Bei einem High Availability-Netzwerk können Sie zwei oder mehr Anker-Peers angeben.
- Alle Mitglieder, die den Netzwerkkanal verwenden, müssen ihre Konsole verwenden, um einen oder mehrere ihrer Peerknoten als Anker-Peers zu kennzeichnen.
Sie müssen Administrator sein, um diese Aufgabe auszuführen.
Informationen zu bereitgestellten Chaincodes anzeigen
Sie können Informationen zu den Chaincodes anzeigen, die auf den verschiedenen Kanälen in Ihrem Netzwerk bereitgestellt werden.
- Gehen Sie zur Konsole, und wählen Sie die Registerkarte Kanäle aus.
- Klicken Sie in der Kanaltabelle auf den Kanalnamen mit dem Chaincode, für den Sie Informationen anzeigen möchten.
- Bestätigen Sie auf der Seite Kanalinformationen, dass der Fensterbereich "Bereitgestellte Kettencodes" ausgewählt ist
- In der Chaincode-Tabelle können Sie:
- Klicken Sie auf die Chaincode-Paket-ID, um zur Registerkarte Chaincodes zu gelangen und weitere Informationen dazu zu erhalten. Beispiel: die Peers, auf denen der Chaincode installiert ist, und die Kanäle, auf denen der Chaincode bereitgestellt wird.
- Klicken Sie im Menü "Weitere Aktionen" eines Chaincodes auf Chaincode-Definition anzeigen, um Details zur Definition des Chaincodes, einschließlich der Bestätigungs-Policy, anzuzeigen.
- (Optional) Wenn eine Kanalliste ohne Chaincode angezeigt wird, können Sie zur Registerkarte "Chaincodes" gehen und einen Chaincode für den Kanal bereitstellen. Siehe Chaincode bereitstellen.
Mit Kanal-Policys und ACLs arbeiten
Dieses Thema enthält Informationen zu den Policys und Access-Control-Listen (ACLs) eines Kanals. Sie bietet einen Überblick darüber, was Policys sind, welche Policy-Typen und wie sie geändert werden. Außerdem wird erläutert, wie Sie mit ACLs verwalten, welche Organisationen und Rollen auf die Ressourcen eines Kanals zugreifen können.
Was sind Kanal-Policys?
Eine Policy definiert eine Gruppe von Bedingungen. Die erforderlichen Parteien müssen die Bedingungen der Richtlinie erfüllen, bevor ihre Unterschriften als gültig angesehen werden und die entsprechende Anforderung im Netzwerk erfolgt.
Das Blockchain-Netzwerk wird durch diese Richtlinien verwaltet. Policys prüfen die Identität, die mit einer Anforderung verknüpft ist, anhand der Policy, die mit der zum Erfüllen der Anforderung erforderlichen Ressource verknüpft ist. Policys befinden sich in der Kanalkonfiguration.
Nachdem Sie die Policys des Kanals konfiguriert haben, weisen Sie sie den ACLs-Ressourcen des Kanals zu, um zu bestimmen, welche Mitglieder signiert werden müssen, bevor eine Änderung oder Aktion im Kanal erfolgen kann. Beispiel: Sie haben die Writers-Policy so geändert, dass sie Mitglieder aus Organisation A oder Organisation B enthält. Dann haben Sie die Writers-Policy der cscc/GetConfigBlock-ACL-Ressource des Kanals zugewiesen. Jetzt kann nur ein Mitglied von Organisation A oder Organisation B GetConfigBlock in der Komponente cscc aufrufen.
Was sind die Policy-Typen?
Es gibt zwei Policy-Typen: Signatur und ImplicitMeta.
- Signatur – Gibt eine Kombination aus Auswertungsregeln an. Es unterstützt Kombinationen aus AND, OR und NOutOf. Beispiel: Sie können so etwas wie "Ein Administrator von Organisation A und 2 anderen Administratoren" oder "11 von 20 Organisationsadministratoren" definieren.
Alle neuen Policys, die Sie erstellen, sind Signatur-Policys.
- ImplicitMeta: Dieser Policy-Typ ist nur im Kontext der Konfiguration gültig. Es aggregiert das Ergebnis der Auswertung von Policys tiefer in der Konfigurationshierarchie, die durch Signatur-Policys definiert sind. Es unterstützt Standardregeln, z.B. "Eine Mehrheit der Organisations-Admin-Policys".
Wann werden Policys erstellt?
Wenn Sie dem Netzwerk einen Kanal hinzufügen, erstellt Oracle Blockchain Platform Standard-Policys. Die Standard-Policys sind: Admins, Writers, Readers, Endorsement, LifecycleEndorsement (ImplicitMeta-Policys) und Creator (Signatur-Policy). Sie können diese Policys nach Bedarf ändern oder Policys erstellen.
Beachten Sie das folgende wichtige Problem bei Kanal-Policys:
-
Mit der Konsole können Sie einen Kanal erstellen und die ACL Ihrer Organisation auf ReaderOnly setzen. Nachdem Sie den neuen Kanal gespeichert haben, können Sie diese ACL-Einstellung nicht über die Option "Organisation bearbeiten" des Kanals aktualisieren.
Sie können jedoch die Funktionalität "Kanal-Policys verwalten" der Konsole verwenden, um Ihre Organisation zur Writers-Policy hinzuzufügen. Dadurch wird die Einstellung der ReaderOnly-ACL des Kanals überschrieben.
Kanal-Policys hinzufügen oder ändern
Sie können die Policy eines Kanals hinzufügen oder ändern, um anzugeben, welche Mitglieder erforderlich sind, um eine bestimmte Aktion für den Kanal auszuführen. Nachdem Sie Policys definiert haben, weisen Sie sie den ACLs des Kanals zu.
Bevor Sie Policys hinzufügen oder aktualisieren, müssen Sie verstehen, wie Oracle Blockchain Platform Standardkanal-Policys erstellt. Siehe Was sind Kanal-Policys?.
Sie müssen Administrator sein, um diese Aufgabe auszuführen.
- Gehen Sie zur Konsole, und wählen Sie die Registerkarte Kanäle aus.
Die Registerkarte Kanäle wird angezeigt, und die Kanaltabelle enthält eine Liste aller Kanäle in Ihrem Netzwerk.
- Klicken Sie in der Kanaltabelle auf den Kanalnamen, für den Sie Policys hinzufügen oder ändern möchten.
Die Seite Vertriebskanalinformationen wird angezeigt.
- Klicken Sie auf der Seite Vertriebskanalinformationen auf den Bereich Vertriebskanal-Policys.
- Führen Sie eine der folgenden Aktionen aus:
- Um eine neue Policy hinzuzufügen, klicken Sie auf die Schaltfläche Neue Policy erstellen. Das Dialogfeld Policy erstellen wird angezeigt. Geben Sie einen Namen in das Feld Policy-Name ein, und wählen Sie "Signatur" im Feld Policy-Typ aus. Blenden Sie den Abschnitt Signaturrichtlinie ein.
- Um eine vorhandene Policy zu ändern, klicken Sie auf den Namen einer Policy. Das Dialogfeld Policy aktualisieren wird angezeigt.
- Klicken Sie auf die Schaltfläche Identität hinzufügen, um eine Organisation hinzuzufügen. Oder ändern Sie eine vorhandene Signaturrichtlinie nach Bedarf. Beachten Sie die folgenden Informationen:
Feld Beschreibung MSP-ID Wählen Sie im Dropdown-Menü die Organisation aus, die die Policy signieren muss. Rolle Wählen Sie die entsprechende Peerrolle aus, die für die Policy erforderlich ist. Normalerweise wird dies Mitglied sein. Sie können die Rolle eines gleichgestellten Mitarbeiters suchen, indem Sie dessen Konfigurationsinformationen anzeigen. Policy-Ausdrucksmodus In den meisten Fällen verwenden Sie Basis. Wählen Sie Erweitert aus, um eine Ausdruckszeichenfolge mit AND, OR und NOutOf zu schreiben. Informationen zum Schreiben einer gültigen Zeichenfolge für einen Policy-Ausdruck finden Sie unter Endorsement-Policys in der Hyperledger Fabric-Dokumentation. Signiert von Wählen Sie aus, wie viele Mitglieder die Policy unterzeichnen müssen, um die Anforderung zu erfüllen. - Wenn Sie eine neue Policy hinzufügen, klicken Sie auf Erstellen. Wenn Sie eine Policy ändern, klicken Sie auf Aktualisieren.
Kanal-Policys löschen
Sie können von Ihnen erstellte Kanal-Policys löschen.
Sie können die Standard-Policys nicht löschen: Admins, Creator, Readers, Writers, Endorsement und LifecycleEndorsement. Außerdem können Sie eine Kanal-Policy nicht löschen, wenn sie einer ACL zugewiesen ist. Bevor Sie versuchen, eine Kanal-Policy zu löschen, prüfen Sie, ob die Policy nicht zugewiesen ist.
Sie müssen Administrator sein, um diese Aufgabe auszuführen.
- Gehen Sie zur Konsole, und wählen Sie die Registerkarte Kanäle aus.
Die Registerkarte Kanäle wird angezeigt, und die Kanaltabelle enthält eine Liste aller Kanäle in Ihrem Netzwerk.
- Klicken Sie in der Kanaltabelle auf den Kanal, aus dem Sie eine Policy löschen möchten.
Die Seite Vertriebskanalinformationen wird angezeigt.
- Klicken Sie auf der Seite Vertriebskanalinformationen auf den Bereich Vertriebskanal-Policys.
- Suchen Sie die Policy, die Sie löschen möchten, und klicken Sie auf die Schaltfläche Weitere Optionen.
- Klicken Sie auf Entfernen, und bestätigen Sie den Löschvorgang.
Was sind Channel-ACLs?
Access Control-Listen (ACLs) verwenden Policys, um zu verwalten, welche Organisationen und Rollen auf die Ressourcen eines Kanals zugreifen können.
Benutzer interagieren mit dem Blockchain-Netzwerk, indem sie Komponenten wie den Abfragesystem-Chaincode (qscc), den Lebenszyklussystem-Chaincode (_lifecycle), den Konfigurationssystem-Chaincode (cscc), den Peer und das Ereignis ansprechen. Diese Komponenten sind mit bestimmten Ressourcen verknüpft (z.B. GetConfigBlock oder GetChaincodeData), denen Sie Policys auf Kanalebene zuweisen können. Diese Policys sind Teil der Kanalkonfiguration.
Eine Policy definiert, welche Organisationen und Rollen eine Ressource anfordern können. Wenn eine Anforderung erstellt wird, weist die Policy das System an, die Identität des Anforderers zu prüfen und zu bestimmen, ob er für die Anforderung autorisiert ist. Wenn Sie einen Kanal erstellen, enthält Oracle Blockchain Platform die standardmäßigen Hyperledger Fabric-ACLs mit dem Kanal. Oracle Blockchain Platform erstellt außerdem Standard-Policys (Admin, Creator, Writers, Readers, Endorsement und LifecycleEndorsement) für den Kanal. Sie können diese Policys ändern oder nach Bedarf Policys erstellen. Siehe Was sind Kanal-Policys?.
Kanal-ACLs aktualisieren
Sie können die ACLs des Kanals aktualisieren, indem Sie den Ressourcen des Kanals Policys zuweisen. Eine Policy definiert, welche Organisationen und Rollen eine Ressource anfordern können
Bevor Sie die ACLs eines Kanals aktualisieren, müssen Sie sich mit den Policys und ACLs vertraut machen. Weitere Informationen finden Sie unter Was sind Kanal-ACLs?.
- Gehen Sie zur Konsole, und klicken Sie auf die Registerkarte Kanäle.
Die Seite Kanäle wird angezeigt, und die Kanaltabelle enthält eine Liste aller Kanäle in Ihrem Netzwerk.
- Klicken Sie in der Kanaltabelle auf den Namen des Kanals, für den Sie ACLs aktualisieren möchten.
Die Seite Vertriebskanalinformationen wird angezeigt.
- Klicken Sie auf der Seite Kanalinformationen auf den Bereich ACLs.
- Suchen Sie in der Tabelle "Ressourcen" die Ressource, die Sie aktualisieren möchten. Klicken Sie auf die Schaltfläche Einblenden der Ressource, und wählen Sie die Policy aus, die Sie der Ressource zuweisen möchten.
- Ändern Sie die Policys der anderen Ressource nach Bedarf.
- Klicken Sie auf ACLs aktualisieren.
Besteller zu oder aus einem Kanal hinzufügen oder entfernen
Die Orderer-Admin-Organisation kann Orderer zu einem Kanal hinzufügen oder daraus entfernen.
- Öffnen Sie in der Gründerkonsole die Registerkarte Kanäle, und wählen Sie den Kanal aus, um die Detailansicht anzuzeigen.
- Öffnen Sie die Unterregisterkarte Auftraggeber. Alle Orderer-Knoten, die derzeit mit dem Channel verknüpft sind, werden aufgelistet.
- Klicken Sie auf Join Channel. Wählen Sie einen OSN aus, der noch nicht in diesem Kanal vorhanden ist, und klicken Sie auf Beitreten.
- Öffnen Sie in der Gründerkonsole die Registerkarte Kanäle, und wählen Sie den Kanal aus, um die Detailansicht anzuzeigen.
- Öffnen Sie die Unterregisterkarte Auftraggeber. Alle Orderer-Knoten, die derzeit mit dem Channel verknüpft sind, werden aufgelistet.
- Wählen Sie den Besteller aus, den Sie aus dem Kanal entfernen möchten, und wählen Sie im Menü "Weitere Aktionen" die Option Entfernen aus.
Administratororganisation des Auftraggebers festlegen
Sie können die Administration von OSNs in einem Kanal jeder Organisation zuweisen. Normalerweise wird entweder der Gründer oder der Channel-Ersteller zugewiesen.
- Öffnen Sie in der Gründerkonsole die Registerkarte Kanäle.
- Wählen Sie den Kanal aus, für den Sie die Organisation des Orderer-Administrators festlegen möchten, und wählen Sie im Menü "Aktion" die Option OSN-Admin verwalten.
- Wählen Sie aus der Liste der verfügbaren Organisationen aus, und klicken Sie auf Weiterleiten.
Bestellserviceeinstellungen für einen Kanal bearbeiten
Sie können die Bestellserviceeinstellungen für einen bestimmten Kanal aktualisieren.
- Sie können die Bestellserviceeinstellungen für das gesamte Netzwerk aktualisieren, wie unter Bestellserviceeinstellungen für das Netzwerk bearbeiten beschrieben.
- Wenn Sie die Ordering-Service-Einstellungen ändern und Anwendungen für das Netzwerk ausgeführt werden, müssen diese Anwendungen manuell aktualisiert werden, um die überarbeiteten Ordering-Service-Einstellungen zu verwenden.
- Es ist nicht üblich, aber in einigen Situationen können Sie einigen Netzwerkteilnehmern einen anderen Bestellservice aussetzen. In diesem Fall exportieren Sie den aktualisierten Netzwerkkonfigurationsblock, und die erforderlichen Teilnehmer importieren die überarbeiteten Einstellungen. Siehe Teilnehmer- oder skalierte OSNs mit dem Ordering-Service des Gründers verbinden.