Azure Data Explorer mengenkripsi semua data di akun penyimpanan saat tidak aktif. Secara default, data dienkripsi dengan kunci yang dikelola Microsoft. Untuk kontrol ekstra atas kunci enkripsi, Anda dapat menyediakan kunci yang dikelola pelanggan untuk digunakan untuk enkripsi data.
Kunci yang dikelola pelanggan harus disimpan di Key Vault Azure. Anda dapat membuat kunci Anda sendiri dan menyimpannya di brankas kunci, atau Anda dapat menggunakan Azure Key Vault API untuk menghasilkan kunci. Kluster Azure Data Explorer dan brankas kunci harus berada di wilayah yang sama, tetapi dapat berada di langganan yang berbeda. Untuk penjelasan terperinci tentang kunci yang dikelola pelanggan, lihat kunci yang dikelola pelanggan dengan Azure Key Vault.
Artikel ini memperlihatkan kepada Anda cara mengonfigurasi kunci yang dikelola pelanggan.
Untuk mengonfigurasi kunci yang dikelola pelanggan dengan Azure Data Explorer, Anda harus mengatur dua properti pada brankas kunci: Penghapusan Sementara dan Jangan Hapus Menyeluruh. Properti ini tidak diaktifkan secara default. Untuk mengaktifkan properti ini, lakukan Mengaktifkan penghapusan sementara dan Mengaktifkan Perlindungan Penghapusan Menyeluruh di PowerShell atau Azure CLI pada brankas kunci baru atau yang sudah ada. Hanya kunci RSA ukuran 2048 yang didukung. Untuk informasi selengkapnya tentang kunci, lihat kunci Key Vault.
Catatan
Untuk informasi tentang batasan penggunaan kunci yang dikelola pelanggan pada kluster pemimpin dan pengikut, lihat Batasan.
Menetapkan identitas terkelola ke kluster
Untuk mengaktifkan kunci yang dikelola pelanggan untuk kluster Anda, pertama-tama tetapkan identitas terkelola yang ditetapkan sistem atau ditetapkan pengguna ke kluster. Anda akan menggunakan identitas terkelola ini untuk memberikan izin kluster untuk mengakses brankas kunci. Untuk mengonfigurasi identitas terkelola, lihat identitas terkelola.
Mengaktifkan enkripsi dengan kunci yang dikelola pelanggan
Langkah-langkah berikut menjelaskan cara mengaktifkan enkripsi kunci yang dikelola pelanggan menggunakan portal Azure. Secara default, enkripsi Azure Data Explorer menggunakan kunci yang dikelola Microsoft. Konfigurasikan kluster Azure Data Explorer Anda untuk menggunakan kunci yang dikelola pelanggan dan tentukan kunci yang akan dikaitkan dengan kluster.
Di panel Enkripsi , pilih Aktif untuk pengaturan Kunci yang dikelola pelanggan .
Pilih Pilih Kunci.
Di jendela Pilih kunci dari Azure Key Vault, pilih Brankas kunci yang ada dari daftar dropdown. Jika Anda memilih Buat baru untuk membuat Key Vault baru, Anda akan dirutekan ke layar Buat Key Vault.
Pilih Kunci.
Versi:
Untuk memastikan bahwa kunci ini selalu menggunakan versi kunci terbaru, pilih kotak centang Selalu gunakan versi kunci saat ini .
Jika tidak, pilih Versi.
Pilih Pilih.
Di bawah Jenis identitas, pilih Sistem yang Ditetapkan atau Ditetapkan Pengguna.
Jika Anda memilih Ditetapkan Pengguna, pilih identitas yang ditetapkan pengguna dari menu dropdown.
Di panel Enkripsi yang sekarang berisi kunci Anda, pilih Simpan. Saat pembuatan CMK berhasil, Anda akan melihat pesan sukses di Pemberitahuan.
Jika Anda memilih identitas yang ditetapkan sistem saat mengaktifkan kunci yang dikelola pelanggan untuk kluster Azure Data Explorer, Anda akan membuat identitas yang ditetapkan sistem untuk kluster jika tidak ada. Selain itu, Anda akan memberikan izin get, wrapKey, dan unwrapKey yang diperlukan ke kluster Azure Data Explorer Anda pada Key Vault yang dipilih dan mendapatkan properti Key Vault.
Catatan
Pilih Nonaktif untuk menghapus kunci yang dikelola pelanggan setelah dibuat.
Bagian berikut menjelaskan cara mengonfigurasi enkripsi kunci yang dikelola pelanggan menggunakan klien Azure Data Explorer C#.
Untuk menjalankan contoh dalam artikel ini, buat aplikasi Microsoft Entra dan perwakilan layanan yang dapat mengakses sumber daya. Anda dapat menambahkan penetapan peran di cakupan langganan dan mendapatkan yang diperlukan Microsoft Entra Directory (tenant) ID, Application ID, dan Application Secret.
Cuplikan kode berikut menunjukkan cara menggunakan Microsoft Authentication Library (MSAL) untuk memperoleh token aplikasi Microsoft Entra untuk mengakses kluster Anda. Agar alur berhasil, aplikasi harus didaftarkan dengan ID Microsoft Entra dan Anda harus memiliki kredensial untuk autentikasi aplikasi, seperti kunci aplikasi Microsoft Entra yang dikeluarkan ID atau sertifikat X.509v2 terdaftar Microsoft Entra.
Mengonfigurasi kunci yang dikelola pelanggan
Secara default, enkripsi Azure Data Explorer menggunakan kunci yang dikelola Microsoft. Konfigurasikan kluster Azure Data Explorer Anda untuk menggunakan kunci yang dikelola pelanggan dan tentukan kunci yang akan dikaitkan dengan kluster.
Perbarui kluster Anda dengan menggunakan kode berikut:
var tenantId = "xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxx"; // Azure AD Directory (tenant) ID
var clientId = "xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxx"; // Application ID
var clientSecret = "PlaceholderClientSecret"; // Application secret
var subscriptionId = "xxxxxxxx-xxxxx-xxxx-xxxx-xxxxxxxxx";
var credentials = new ClientSecretCredential(tenantId, clientId, clientSecret);
var resourceManagementClient = new ArmClient(credentials, subscriptionId);
var resourceGroupName = "testrg";
var clusterName = "mykustocluster";
var subscription = await resourceManagementClient.GetDefaultSubscriptionAsync();
var resourceGroup = (await subscription.GetResourceGroupAsync(resourceGroupName)).Value;
var clusters = resourceGroup.GetKustoClusters();
var cluster = (await clusters.GetAsync(clusterName)).Value;
var clusterPatch = new KustoClusterPatch(cluster.Data.Location)
{
KeyVaultProperties = new KustoKeyVaultProperties
{
KeyName = "<keyName>",
KeyVersion = "<keyVersion>", // Optional, leave as NULL for the latest version of the key.
KeyVaultUri = new Uri("https://<keyVaultName>.vault.azure.net/"),
UserIdentity = "/subscriptions/<identitySubscriptionId>/resourcegroups/<identityResourceGroupName>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<identityName>" // Use NULL if you want to use system assigned identity.
}
};
await cluster.UpdateAsync(WaitUntil.Completed, clusterPatch);
Jalankan perintah berikut untuk memeriksa apakah kluster Anda berhasil diperbarui:
var clusterData = (await resourceGroup.GetKustoClusterAsync(clusterName)).Value.Data;
Jika hasilnya berisi ProvisioningState dengan Succeeded nilai , maka kluster Anda berhasil diperbarui.
Langkah-langkah berikut menjelaskan cara mengaktifkan enkripsi kunci yang dikelola pelanggan menggunakan klien Azure CLI. Secara default, enkripsi Azure Data Explorer menggunakan kunci yang dikelola Microsoft. Konfigurasikan kluster Azure Data Explorer Anda untuk menggunakan kunci yang dikelola pelanggan dan tentukan kunci yang akan dikaitkan dengan kluster.
Jalankan perintah berikut untuk masuk ke Azure:
az login
Atur langganan tempat kluster Anda terdaftar. Ganti MyAzureSub dengan nama langganan Azure yang ingin Anda gunakan.
az account set --subscription MyAzureSub
Jalankan perintah berikut untuk mengatur kunci baru dengan identitas yang ditetapkan sistem kluster
Jalankan perintah berikut dan periksa properti 'keyVaultProperties' untuk memverifikasi kluster berhasil diperbarui.
az kusto cluster show --cluster-name "mytestcluster" --resource-group "mytestrg"
Langkah-langkah berikut menjelaskan cara mengaktifkan enkripsi kunci yang dikelola pelanggan menggunakan PowerShell. Secara default, enkripsi Azure Data Explorer menggunakan kunci yang dikelola Microsoft. Konfigurasikan kluster Azure Data Explorer Anda untuk menggunakan kunci yang dikelola pelanggan dan tentukan kunci yang akan dikaitkan dengan kluster.
Langkah-langkah berikut menjelaskan cara mengonfigurasi kunci yang dikelola pelanggan menggunakan templat Azure Resource Manager. Secara default, enkripsi Azure Data Explorer menggunakan kunci yang dikelola Microsoft. Dalam langkah ini, konfigurasikan kluster Azure Data Explorer Anda untuk menggunakan kunci yang dikelola pelanggan dan tentukan kunci yang akan dikaitkan dengan kluster.
Jika Anda ingin menggunakan identitas yang ditetapkan sistem untuk mengakses brankas kunci, biarkan userIdentity kosong. Jika tidak, atur ID sumber daya identitas.
Anda dapat menyebarkan templat Azure Resource Manager dengan menggunakan portal Azure atau menggunakan PowerShell.
Saat membuat versi kunci baru, Anda harus memperbarui kluster untuk menggunakan versi baru. Pertama, panggil Get-AzKeyVaultKey untuk mendapatkan kunci versi terbaru. Kemudian perbarui properti brankas kunci kluster untuk menggunakan versi baru kunci, seperti yang ditunjukkan dalam Mengaktifkan enkripsi dengan kunci yang dikelola pelanggan.