Mengonfigurasi kunci yang dikelola pelanggan untuk DBFS menggunakan Azure CLI

Catatan

Fitur ini hanya tersedia dalam paket Premium.

Anda dapat menggunakan Azure CLI untuk mengonfigurasi kunci enkripsi Anda sendiri untuk mengenkripsi akun penyimpanan ruang kerja. Artikel ini menjelaskan cara mengonfigurasi kunci Anda sendiri dari brankas Azure Key Vault. Untuk instruksi tentang menggunakan kunci dari Azure Key Vault Managed HSM, lihat Mengonfigurasi kunci yang dikelola pelanggan HSM untuk DBFS menggunakan Azure CLI.

Untuk informasi selengkapnya tentang kunci yang dikelola pelanggan untuk DBFS, lihat Kunci yang dikelola pelanggan untuk root DBFS.

Menginstal ekstensi Azure Databricks CLI

  1. Instal Azure CLI.

  2. Instal ekstensi Azure Databricks CLI.

    az extension add --name databricks
    

Menyiapkan ruang kerja Azure Databricks baru atau yang sudah ada untuk enkripsi

Ganti nilai tempat penampung dalam tanda kurung dengan nilai Anda sendiri. <workspace-name> adalah nama sumber daya yang ditampilkan di portal Microsoft Azure.

az login
az account set --subscription <subscription-id>

Siapkan enkripsi selama pembuatan ruang kerja:

az databricks workspace create --name <workspace-name> --location <workspace-location> --resource-group <resource-group> --sku premium --prepare-encryption

Siapkan ruang kerja yang ada untuk enkripsi:

az databricks workspace update --name <workspace-name> --resource-group <resource-group> --prepare-encryption

Perhatikan bidang principalId di bagian storageAccountIdentity dari keluaran perintah. Anda akan memberikannya sebagai nilai identitas terkelola saat mengonfigurasi Key Vault Anda.

Untuk informasi selengkapnya tentang perintah Azure CLI untuk ruang kerja Azure Databricks, lihat referensi perintah ruang kerja az databricks.

Membuat Key Vault baru

Key Vault yang Anda gunakan untuk menyimpan kunci yang dikelola pelanggan untuk akar DBFS harus mengaktifkan dua pengaturan perlindungan kunci, yaitu Penghapusan Sementara dan Perlindungan terhadap Penghapusan Permanen. Untuk membuat Key Vault baru dengan pengaturan ini diaktifkan, jalankan perintah berikut.

Penting

Key Vault harus berada di penyewa Azure yang sama dengan ruang kerja Azure Databricks Anda.

Ganti nilai tempat penampung dalam tanda kurung dengan nilai Anda sendiri.

az keyvault create \
        --name <key-vault> \
        --resource-group <resource-group> \
        --location <region> \
        --enable-soft-delete \
        --enable-purge-protection

Untuk informasi selengkapnya tentang mengaktifkan Soft Delete dan Purge Protection menggunakan Azure CLI, lihat Cara menggunakan penghapusan sementara Key Vault dengan CLI.

Memberikan akses akun penyimpanan ruang kerja Anda ke brankas kunci

Berikan peran Pengguna Enkripsi Layanan Kripto Key Vault ke identitas akun penyimpanan ruang kerja di brankas kunci Anda:

az keyvault role assignment create \
                        --role "Key Vault Crypto Service Encryption User"  \
                        --assignee <workspace-storage-account-identity-principal-id>

Catatan

Jika brankas kunci Anda menggunakan kebijakan akses alih-alih RBAC, gunakan perintah berikut:

az keyvault set-policy \
        --name <key-vault> \
        --resource-group <resource-group> \
        --object-id <workspace-storage-account-identity-principal-id>  \
        --key-permissions get unwrapKey wrapKey

Membuat kunci baru

Buat kunci di Key Vault menggunakan perintah az keyvault key create .

Ganti nilai tempat penampung dalam tanda kurung dengan nilai Anda sendiri.

az keyvault key create \
       --name <key> \
       --vault-name <key-vault>

Penyimpanan akar DBFS mendukung kunci RSA dan RSA-HSM ukuran 2048, 3072 dan 4096. Untuk informasi selengkapnya tentang kunci, lihat Tentang kunci Key Vault.

Konfigurasikan enkripsi DBFS dengan kunci yang dikelola pelanggan

Konfigurasikan ruang kerja Azure Databricks Anda untuk menggunakan kunci yang Anda buat di Azure Key Vault Anda.

Ganti nilai tempat penampung dalam tanda kurung dengan nilai Anda sendiri.

key_vault_uri=$(az keyvault show \
 --name <key-vault> \
 --resource-group <resource-group> \
 --query properties.vaultUri \
--output tsv)
key_version=$(az keyvault key list-versions \
 --name <key> \ --vault-name <key-vault> \
 --query [-1].kid \
--output tsv | cut -d '/' -f 6)
az databricks workspace update --name <workspace-name> --resource-group <resource-group> --key-source Microsoft.KeyVault --key-name <key> --key-vault $key_vault_uri --key-version $key_version

Menonaktifkan kunci yang dikelola pelanggan

Saat Anda menonaktifkan kunci yang dikelola pelanggan, akun penyimpanan Anda sekali lagi dienkripsi dengan kunci yang dikelola Microsoft.

Ganti nilai placeholder dalam kurung siku dengan nilai Anda sendiri dan gunakan variabel yang telah ditentukan dalam langkah-langkah sebelumnya.

az databricks workspace update --name <workspace-name> --resource-group <resource-group> --key-source Default