Mengonfigurasi kunci yang dikelola pelanggan untuk DBFS menggunakan PowerShell

Catatan

Fitur ini hanya tersedia dalam paket Premium.

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

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

Pasang modul Azure Databricks PowerShell

  1. Pasang Azure PowerShell.
  2. Pasang modul Azure Databricks PowerShell.

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

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

Siapkan enkripsi saat Anda membuat ruang kerja:

$workSpace = New-AzDatabricksWorkspace -Name <workspace-name> -Location <workspace-location> -ResourceGroupName <resource-group> -Sku premium -PrepareEncryption

Siapkan ruang kerja yang ada untuk enkripsi:

$workSpace = Update-AzDatabricksWorkspace -Name <workspace-name> -ResourceGroupName <resource-group> -PrepareEncryption

Untuk informasi selengkapnya tentang cmdlet PowerShell untuk ruang kerja Azure Databricks, lihat Referensi modul Az.Databricks.

Membuat brankas kunci baru

Azure Key Vault yang Anda gunakan untuk menyimpan kunci yang dikelola pelanggan untuk DBFS default (root) harus mengaktifkan dua pengaturan perlindungan kunci, Penghapusan Lunak dan Perlindungan Pembersihan.

Penting

Brankas kunci harus ada dalam tenant Azure yang sama dengan ruang kerja Azure Databricks Anda.

Dalam Az.KeyVault modul versi 2.0.0 dan yang lebih baru, soft delete diaktifkan secara default saat Anda membuat brankas kunci baru.

Contoh berikut membuat brankas kunci baru dengan properti penghapusan lunak dan perlindungan terhadap penghapusan total diaktifkan. Ganti nilai pengganti dalam tanda kurung dengan nilai Anda sendiri.

$keyVault = New-AzKeyVault -Name <key-vault> `
     -ResourceGroupName <resource-group> `
     -Location <location> `
     -EnablePurgeProtection

Untuk mempelajari cara mengaktifkan penghapusan sementara dan perlindungan penghapusan menyeluruh pada brankas kunci yang ada dengan PowerShell, lihat Manajemen pemulihan Azure Key Vault dengan penghapusan sementara dan perlindungan penghapusan menyeluruh.

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:

New-AzKeyVaultRoleAssignment -RoleDefinitionName "Key Vault Crypto Service Encryption User" -ObjectId $workspace.StorageAccountIdentity.PrincipalId

Catatan

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

Set-AzKeyVaultAccessPolicy `
      -VaultName $keyVault.VaultName `
      -ObjectId $workspace.StorageAccountIdentity.PrincipalId `
      -PermissionsToKeys wrapkey,unwrapkey,get

Membuat kunci baru

Buat kunci baru di brankas kunci menggunakan cmdlet Add-AzKeyVaultKey . Ganti nilai pengganti dalam tanda kurung dengan nilai Anda sendiri.

$key = Add-AzKeyVaultKey -VaultName $keyVault.VaultName -Name <key> -Destination 'Software'

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

Mengonfigurasi 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 pengganti dalam tanda kurung dengan nilai Anda sendiri.

Update-AzDatabricksWorkspace -ResourceGroupName <resource-group> `
      -Name <workspace-name>
     -EncryptionKeySource Microsoft.Keyvault `
     -EncryptionKeyName $key.Name `
     -EncryptionKeyVersion $key.Version `
     -EncryptionKeyVaultUri $keyVault.VaultUri

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 pengganti dalam tanda kurung dengan nilai Anda sendiri dan gunakan variabel yang ditentukan dalam langkah-langkah sebelumnya.

Update-AzDatabricksWorkspace -Name <workspace-name> -ResourceGroupName <resource-group> -EncryptionKeySource Default