Schnellstart: Azure Confidential Ledger-Clientbibliothek für .NET
Artikel
Führen Sie erste Schritte mit der Azure Confidential Ledger-Clientbibliothek für .NET aus. Azure Confidential Ledger ist ein neuer und äußerst sicherer Dienst für die Verwaltung vertraulicher Datensätze. Azure Confidential Ledger basiert auf einem genehmigten Blockchainmodell und bietet Vorteile für die Datenintegrität, die Sie nirgendwo anders finden. Dazu zählen die Unveränderlichkeit, sodass der Ledger nur Anfügevorgänge unterstützt, und der Manipulationsschutz, sodass alle Datensätze garantiert intakt bleiben.
In dieser Schnellstartanleitung erfahren Sie, wie Sie Einträge in einem Azure Confidential Ledger mithilfe der .NET-Clientbibliothek erstellen.
Ressourcen der Azure Confidential Ledger-Clientbibliothek:
Sie benötigen außerdem eine aktive Confidential Ledger-Instanz und einen registrierten Benutzer mit den Administrator-Berechtigungen. Sie können einen Confidential Ledger (und ein Administrator) im Azure-Portal, über die Azure CLI oder mit Azure PowerShell erstellen.
Einrichten
Erstellen einer neuen .NET-Konsolen-App
Führen Sie in einer Befehlsshell den folgenden Befehl aus, um ein Projekt namens acl-app zu erstellen:
.NET CLI
dotnetnew console --name acl-app
Wechseln Sie zum neu erstellten Verzeichnis acl-app, und führen Sie den folgenden Befehl aus, um das Projekt zu erstellen:
.NET CLI
dotnetbuild
Die Buildausgabe sollte keine Warnungen oder Fehler enthalten.
Konsole
Build succeeded.
0 Warning(s)
0 Error(s)
Installieren des Pakets
Installieren Sie die Confidential Ledger-Clientbibliothek für .NET mit [NuGet][client_nuget_package]:
Für diesen Schnellstart müssen Sie auch die Azure SDK-Clientbibliothek für Azure Identity installieren:
.NET CLI
dotnetadd package Azure.Identity
Objektmodell
Mit der Azure Confidential Ledger-Clientbibliothek für .NET können Sie einen unveränderlichen Ledger-Eintrag im Dienst erstellen. Im Abschnitt Codebeispiele wird gezeigt, wie Sie einen Schreibvorgang im Ledger erstellen und die Transaktions-ID abrufen.
Codebeispiele
Hinzufügen von Anweisungen
Fügen Sie am Anfang von Program.cs die folgenden Anweisungen hinzu:
C#
using System;
using Azure.Core;
using Azure.Identity;
using Azure.Security.ConfidentialLedger;
using Azure.Security.ConfidentialLedger.Certificate;
Authentifizieren und Erstellen eines Clients
In dieser Schnellstartanleitung wird der angemeldete Benutzer zum Authentifizieren bei Azure Confidential Ledger verwendet. Dies ist die bevorzugte Methode für die lokale Entwicklung. Der Name Ihres Confidential Ledgers wird auf den Schlüsseltresor-URI im Format „https://<Ihr-Confidential-Ledger-Name>.confidential-ledger.azure.com“ erweitert. In diesem Beispiel wird die Klasse DefaultAzureCredential() aus der Azure Identity-Bibliothek verwendet, wodurch der gleiche Code in verschiedenen Umgebungen mit verschiedenen Optionen für die Identitätsbereitstellung verwendet werden kann.
C#
credential = DefaultAzureCredential()
Schreiben in den Confidential Ledger
Sie können jetzt mit der Methode PostLedgerEntry in den Confidential Ledger schreiben.
Die Methode PostLedgerEntry gibt ein Objekt zurück, das die Transaktion des Eintrags enthält, den Sie gerade in den Confidential Ledger geschrieben haben. Um die Transaktions-ID abzurufen, greifen Sie auf den Wert „Id“ zu:
C#
string transactionId = postOperation.Id;
Console.WriteLine($"Appended transaction with Id: {transactionId}");
Lesen aus dem Confidential Ledger
Mit einer Transaktions-ID können Sie mit der Methode GetLedgerEntry aus dem Confidential Ledger lesen:
Führen Sie direkt in der Konsole den folgenden Befehl aus, um die App auszuführen.
C#
dotnet run
Beispielcode
C#
using System;
using Azure.Core;
using Azure.Identity;
using Azure.Security.ConfidentialLedger;
using Azure.Security.ConfidentialLedger.Certificate;
namespaceacl_app
{
classProgram
{
static Task Main(string[] args)
{
// Replace with the name of your confidential ledgerconststring ledgerName = "myLedger";
var ledgerUri = $"https://{ledgerName}.confidential-ledger.azure.com";
// Create a confidential ledger client using the ledger URI and DefaultAzureCredentialvar ledgerClient = new ConfidentialLedgerClient(new Uri(ledgerUri), new DefaultAzureCredential());
// Write to the ledger
Operation postOperation = ledgerClient.PostLedgerEntry(
waitUntil: WaitUntil.Completed,
RequestContent.Create(
new { contents = "Hello world!" }));
// Access the transaction ID of the ledger writestring transactionId = postOperation.Id;
Console.WriteLine($"Appended transaction with Id: {transactionId}");
// Use the transaction ID to read from the ledger
Response ledgerResponse = ledgerClient.GetLedgerEntry(transactionId, collectionId);
string entryContents = JsonDocument.Parse(ledgerResponse.Content)
.RootElement
.GetProperty("entry")
.GetProperty("contents")
.GetString();
Console.WriteLine(entryContents);
}
}
}
Nächste Schritte
Weitere Informationen zu Azure Confidential Ledger und zur Integration in Ihre Apps finden Sie in den folgenden Artikeln:
Erstellen Sie mit der kostenlosen .NET-Open-Source-Plattform resiliente und äußerst skalierbare Apps und Dienste, die sich unabhängig bereitstellen lassen. Mit .NET können Sie beliebte Microservicetechnologien wie Docker, Kubernetes, Dapr, Azure Container Registry und mehr für .NET- und ASP.NET Core-Anwendungen und -Dienste verwenden.