Share via


Erstellen einer verwalteten Anwendung zum Speichern von Blob-Digests

Voraussetzungen

Überblick

Der Blob Storage Digest, gesichert durch Confidential Ledger kann verwendet werden, um sicherzustellen, dass die Blobs in einem Blobcontainer vertrauenswürdig und nicht manipuliert werden. Die Anwendung, die einmal mit einem Speicherkonto verbunden ist, verfolgt alle Blobs, die jedem Container im Speicherkonto in Echtzeit hinzugefügt werden, zusätzlich zur Berechnung und Speicherung der Digests in Azure Confidential Ledger. Überprüfungen können jederzeit durchgeführt werden, um die Gültigkeit der Blobs zu überprüfen und sicherzustellen, dass der Blob-Container nicht manipuliert ist.

Bereitstellen der verwalteten Anwendung

Die verwaltete Anwendung finden Sie hier im Azure Marketplace: Blob Storage Digests, gesichert durch Confidential Ledger (Vorschau).

Zu erstellende Ressourcen

Sobald die erforderlichen Felder ausgefüllt und die Anwendung bereitgestellt wird, werden die folgenden Ressourcen unter einer verwalteten Ressourcengruppe erstellt:

Verbinden eines Speicherkontos mit der verwalteten Anwendung

Nachdem eine verwaltete Anwendung erstellt wurde, können Sie die verwaltete Anwendung mit Ihrem Speicherkonto verbinden, um mit der Verarbeitung und Aufzeichnung von Blob-Containerdigests in Azure Confidential Ledger zu beginnen.

Erstellen eines Themas und eines Ereignisabonnements für das Speicherkonto

Die verwaltete Anwendung verwendet eine Azure Service Bus-Warteschlange, um alle Blob erstellen-Ereignisse nachzuverfolgen und aufzuzeichnen. Sie verwenden die Warteschlange, die in der Verwalteten Ressourcengruppe von der verwalteten Anwendung erstellt wurde, und fügen sie als Ereignisabonnent für jedes Speicherkonto hinzu, für das Sie Blobs erstellen.

Screenshot of the Azure portal in a web browser, showing how to set up a storage event subscription.

Im Azure-Portal können Sie zu dem Speicherkonto navigieren, für das Sie mit dem Erstellen von Blob-Digests beginnen und zum Blatt Events wechseln möchten. Dort können Sie ein Ereignisabonnement erstellen und mit dem Azure Service Bus Warteschlange-Endpunkt verbinden.

Screenshot of the Azure portal in a web browser, showing how to set up a storage event subscription session ID.

Die Warteschlange verwendet Sitzungen, um die Sortierung über mehrere Speicherkonten hinweg aufrechtzuerhalten, sodass Sie auch zur Registerkarte Delivery Properties navigieren und eine eindeutige Sitzungs-ID für dieses Ereignisabonnement eingeben müssen.

Fügen Sie die erforderlichen Rolle zum Speicherkonto hinzu

Die verwaltete Anwendung erfordert, dass die Rolle Storage Blob Data Owner Hashes für jedes Blob lesen und erstellen kann und diese Rolle muss hinzugefügt werden, damit der Digest ordnungsgemäß berechnet wird.

Screenshot of the Azure portal in a web browser, showing how to set up a managed identity for the managed app.

Hinweis

Mehrere Speicherkonten können mit einer einzigen verwalteten Anwendungsinstanz verbunden werden. Wir empfehlen derzeit ein Maximum von 10 Speicherkonten, die häufig benutzte Blob-Container enthalten.

Hinzufügen von Blobs und Digest-Erstellung

Sobald das Speicherkonto ordnungsgemäß mit der verwalteten Anwendung verbunden ist, können Blobs zu Containern innerhalb des Speicherkontos hinzugefügt werden. Die Blobs werden in Echtzeit nachverfolgt und Digests werden in Azure Confidential Ledger berechnet und gespeichert.

Transaktions- und Blocktabellen

Alle Blob-Erstellungsereignisse werden in internen Tabellen nachverfolgt, welche in der verwalteten Anwendung gespeichert sind.

Screenshot of the Azure portal in a web browser, showing the transaction table where blob hashes are stored.

Die Transaktionstabelle enthält Informationen zu jedem Blob und einen eindeutigen Hash, der mithilfe einer Kombination der Metadaten und Inhalte des Blobs generiert wird.

Screenshot of the Azure portal in a web browser, showing the block table where digest information is stored.

Die Blocktabelle enthält Informationen zu jedem Digest, der für den BLOB-Container erstellt wird, und die zugehörige Transaktions-ID für den Digest wird in Azure Confidential Ledger gespeichert.

Hinweis

Jedes Blob-Erstellungsereignis führt nicht dazu, dass ein Digest erstellt wird. Digests werden erstellt, nachdem eine bestimmte Blockgröße erreicht wurde. Derzeit wird ein Digest für alle vier Blob-Erstellungsereignisse erstellt.

Anzeigen des Digests in Azure Confidential Ledger

Sie können die Digests anzeigen, die direkt in Azure Confidential Ledger gespeichert werden, indem Sie zum Blatt Ledger Explorer navigieren.

Screenshot of the Azure portal in a web browser, showing the Azure Confidential Ledger explorer with digest transactions.

Durchführen einer Überprüfung

Wenn Sie jemals die Gültigkeit der Blobs überprüfen möchten, die einem Container hinzugefügt werden, um sicherzustellen, dass sie nicht manipuliert werden, kann eine Überprüfung zu einem beliebigen Zeitpunkt ausgeführt werden. Die Überprüfung gibt jedes Blob-Erstellungsereignis wieder und berechnet die Digests mit den Blobs, die während der Überprüfung im Container gespeichert sind. Anschließend werden die neu berechneten Digests mit den in Azure Confidential gespeicherten Digests verglichen und es wird ein Bericht mit allen Digestvergleichen angezeigt und ob der BLOB-Container manipuliert wird.

Auslösen einer Überprüfung

Eine Überprüfung kann ausgelöst werden, indem die folgende Meldung zur Service Bus-Warteschlange hinzugefügt wird, die Ihrer verwalteten Anwendung zugeordnet ist:

{
    "eventType": "PerformAudit",
    "storageAccount": "<storage_account_name>",
    "blobContainer": "<blob_container_name>"
}

Screenshot of the Azure portal in a web browser, how to trigger an audit by adding a message to the queue.

Achten Sie darauf, Session ID hinzuzufügen, da Sitzungen in der Warteschlange aktiviert sind.

Anzeigen von Überprüfungsergebnissen

Sobald eine Überprüfung erfolgreich durchgeführt wurde, können die Ergebnisse der Überprüfung in einem Container mit dem Namen <managed-application-name>-audit-records gefunden werden, der im jeweiligen Speicherkonto enthalten ist. Die Ergebnisse enthalten den neu berechneten Digest, den aus Azure Confidential Ledger abgerufenen Digest und ob die Blobs manipuliert werden.

Screenshot of the Azure portal in a web browser, showing a sample audit record with matching digests.

Protokollierung und Fehler

Fehlerprotokolle finden Sie unter einem Container mit dem Namen <managed-application-name>-error-logs innerhalb des jeweiligen Speicherkontos. Wenn ein Blob-Erstellungsereignis oder ein Überprüfungsvorgang fehlschlägt, wird die Ursache des Fehlers aufgezeichnet und in diesem Container gespeichert. Wenn es Fragen zu den Fehlerprotokollen oder Anwendungsfunktionen gibt, wenden Sie sich an das Azure Confidential Ledger Supportteam, das in den Details zur verwalteten Anwendung bereitgestellt wurde.

Bereinigen verwalteter Anwendungen

Sie können die verwaltete Anwendung löschen, um alle zugehörigen Ressourcen zu bereinigen und zu entfernen. Durch das Löschen der verwalteten Anwendung werden alle Blob-Transaktionen nicht mehr nachverfolgt, und alle Digests werden nicht mehr erstellt. Überprüfungsberichte bleiben gültig für die Blobs, die vor dem Löschen hinzugefügt wurden.

Weitere Ressourcen

Weitere Informationen zu verwalteten Anwendungen und den bereitgestellten Ressourcen finden Sie unter den folgenden Links:

Nächste Schritte