Mulai cepat: Pustaka klien Azure Confidential Ledger untuk .NET
Mulai menggunakan pustaka klien Azure Confidential Ledger untuk .NET. Azure Confidential Ledger adalah layanan baru dan sangat aman untuk mengelola rekaman data sensitif. Berdasarkan model blockchain yang izinkan, Confidential Ledger menawarkan keunggulan integritas data yang unik. Keunggulan tersebut termasuk imutabilitas, membuat ledger menjadi tambahan saja, dan tak bisa diubah, untuk memastikan semua catatan tetap utuh.
Dalam mulai cepat ini, Anda mempelajari cara membuat entri dalam Azure Confidential Ledger menggunakan pustaka klien .NET
Sumber daya pustaka klien Azure Confidential Ledger:
Dokumentasi referensi API | Kode sumber pustaka | Paket (NuGet)
Prasyarat
- Langganan Azure - buat satu secara gratis
- .NET Core 3.1 SDK atau yang lebih baru
- Azure CLI
Anda juga akan memerlukan Confidential Ledger yang sedang berjalan, dan pengguna terdaftar dengan Administrator
hak istimewa. Anda dapat membuat confidential ledger (dan administrator) menggunakan portal Azure, Azure CLI, atau Azure PowerShell.
Siapkan
Buat aplikasi konsol .NET baru
Di shell perintah, jalankan perintah berikut untuk membuat proyek bernama
acl-app
:dotnet new console --name acl-app
Ubah ke direktori acl-app yang baru dibuat, dan jalankan perintah berikut untuk membangun proyek:
dotnet build
Output build tidak boleh berisi peringatan atau kesalahan.
Build succeeded. 0 Warning(s) 0 Error(s)
Instal paketnya
Instal pustaka klien Confidential Ledger untuk .NET dengan [NuGet][client_nuget_package]:
dotnet add package Azure.Security.ConfidentialLedger --version 1.0.0
Untuk mulai cepat ini, Anda juga perlu menginstal pustaka klien Azure SDK untuk Azure Identity:
dotnet add package Azure.Identity
Model objek
Pustaka klien Azure Confidential Ledger untuk .NET memungkinkan Anda membuat entri ledger yang tidak dapat diubah dalam layanan. Bagian Contoh kode menunjukkan cara membuat tulis ke ledger dan mengambil ID transaksi.
Contoh kode
Menambahkan instruksi
Tambahkan arahan berikut di bagian atas Program.cs:
using System;
using Azure.Core;
using Azure.Identity;
using Azure.Security.ConfidentialLedger;
using Azure.Security.ConfidentialLedger.Certificate;
Mengautentikasi dan membuat klien
Dalam mulai cepat ini, pengguna yang masuk digunakan untuk mengautentikasi ke Azure Confidential Ledger, yang merupakan metode pilihan untuk pengembangan lokal. Nama confidential ledger Anda diperluas ke URI brankas kunci, dalam format "https://< your-confidential-ledger-name.confidential-ledger.azure.com>". Contoh ini menggunakan kelas 'DefaultAzureCredential()' dari Pustaka Azure Identity, yang mengizinkan penggunaan kode yang sama di lingkungan yang berbeda dengan opsi yang berbeda untuk memberikan identitas.
credential = DefaultAzureCredential()
Menulis ke Confidential Ledger
Anda sekarang dapat menulis ke Confidential Ledger dengan metode PostLedgerEntry .
Operation postOperation = ledgerClient.PostLedgerEntry(
waitUntil: WaitUntil.Completed,
RequestContent.Create(
new { contents = "Hello world!" }));
Dapatkan ID transaksi
Metode PostLedgerEntry mengembalikan objek yang berisi transaksi entri yang baru saja Anda tulis ke Confidential Ledger. Untuk mendapatkan ID transaksi, akses nilai "Id":
string transactionId = postOperation.Id;
Console.WriteLine($"Appended transaction with Id: {transactionId}");
Membaca dari Confidential Ledger
Dengan ID transaksi, Anda juga dapat membaca dari confidential ledger menggunakan metode GetLedgerEntry :
Response ledgerResponse = ledgerClient.GetLedgerEntry(transactionId, collectionId);
string entryContents = JsonDocument.Parse(ledgerResponse.Content)
.RootElement
.GetProperty("entry")
.GetProperty("contents")
.GetString();
Console.WriteLine(entryContents);
Menguji dan memverifikasi
Di konsol secara langsung, jalankan perintah berikut untuk menjalankan aplikasi.
dotnet run
Kode sampel
using System;
using Azure.Core;
using Azure.Identity;
using Azure.Security.ConfidentialLedger;
using Azure.Security.ConfidentialLedger.Certificate;
namespace acl_app
{
class Program
{
static Task Main(string[] args)
{
// Replace with the name of your confidential ledger
const string ledgerName = "myLedger";
var ledgerUri = $"https://{ledgerName}.confidential-ledger.azure.com";
// Create a confidential ledger client using the ledger URI and DefaultAzureCredential
var 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 write
string 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);
}
}
}
Langkah berikutnya
Untuk mempelajari selengkapnya tentang Azure Confidential Ledger dan cara mengintegrasikannya dengan aplikasi Anda, lihat artikel berikut ini: