Konfigurera kundhanterade nycklar för DBFS med PowerShell
Du kan använda PowerShell för att konfigurera din egen krypteringsnyckel för att kryptera lagringskontot för arbetsytan. Den här artikeln beskriver hur du konfigurerar din egen nyckel från Azure Key Vault-valv. Anvisningar om hur du använder en nyckel från Azure Key Vault Managed HSM finns i Konfigurera kundhanterade HSM-nycklar för DBFS med Hjälp av PowerShell.
Mer information om kundhanterade nycklar för DBFS finns i Kundhanterade nycklar för DBFS-rot.
Installera Azure Databricks PowerShell-modulen
Förbereda en ny eller befintlig Azure Databricks-arbetsyta för kryptering
Ersätt platshållarvärdena inom hakparenteser med dina egna värden.
<workspace-name>
är resursnamnet som visas i Azure Portal.
Förbered kryptering när du skapar en arbetsyta:
$workSpace = New-AzDatabricksWorkspace -Name <workspace-name> -Location <workspace-location> -ResourceGroupName <resource-group> -Sku premium -PrepareEncryption
Förbereda en befintlig arbetsyta för kryptering:
$workSpace = Update-AzDatabricksWorkspace -Name <workspace-name> -ResourceGroupName <resource-group> -PrepareEncryption
Mer information om PowerShell-cmdletar för Azure Databricks-arbetsytor finns i Az.Databricks-referensen.
Skapa ett nytt nyckelvalv
Azure Key Vault som du använder för att lagra kundhanterade nycklar för standard-DBFS (rot) måste ha två nyckelskyddsinställningar aktiverade, Mjuk borttagning och rensningsskydd.
Viktigt!
Key Vault måste finnas i samma Azure-klientorganisation som din Azure Databricks-arbetsyta.
I version 2.0.0 och senare av modulen Az.KeyVault
aktiveras mjuk borttagning som standard när du skapar ett nytt Key Vault.
I följande exempel skapas ett nytt Nyckelvalv med egenskaperna Mjuk borttagning och rensningsskydd aktiverat. Ersätt platshållarvärdena inom hakparenteser med dina egna värden.
$keyVault = New-AzKeyVault -Name <key-vault> `
-ResourceGroupName <resource-group> `
-Location <location> `
-EnablePurgeProtection
Information om hur du aktiverar skydd mot mjuk borttagning och rensning i ett befintligt Nyckelvalv med PowerShell finns i Aktivera mjuk borttagning och Aktivera rensningsskydd i Så här använder du mjuk borttagning av Key Vault med PowerShell.
Konfigurera åtkomstprincipen för Key Vault
Ange åtkomstprincipen för Key Vault så att Azure Databricks-arbetsytan har behörighet att komma åt den med hjälp av Set-AzKeyVaultAccessPolicy.
Set-AzKeyVaultAccessPolicy `
-VaultName $keyVault.VaultName `
-ObjectId $workspace.StorageAccountIdentity.PrincipalId `
-PermissionsToKeys wrapkey,unwrapkey,get
Skapa en ny nyckel
Skapa en ny nyckel i Key Vault med hjälp av cmdleten Add-AzKeyVaultKey . Ersätt platshållarvärdena inom hakparenteser med dina egna värden.
$key = Add-AzKeyVaultKey -VaultName $keyVault.VaultName -Name <key> -Destination 'Software'
DBFS-rotlagring stöder RSA- och RSA-HSM-nycklar i storlekarna 2048, 3072 och 4096. Mer information om nycklar finns i Om nyckelvalvsnycklar.
Konfigurera DBFS-kryptering med kundhanterade nycklar
Konfigurera din Azure Databricks-arbetsyta så att den använder nyckeln som du skapade i Azure Key Vault. Ersätt platshållarvärdena inom hakparenteser med dina egna värden.
Update-AzDatabricksWorkspace -ResourceGroupName <resource-group> `
-Name <workspace-name>
-EncryptionKeySource Microsoft.Keyvault `
-EncryptionKeyName $key.Name `
-EncryptionKeyVersion $key.Version `
-EncryptionKeyVaultUri $keyVault.VaultUri
Inaktivera kundhanterade nycklar
När du inaktiverar kundhanterade nycklar krypteras ditt lagringskonto återigen med Microsoft-hanterade nycklar.
Ersätt platshållarvärdena inom hakparenteser med dina egna värden och använd variablerna som definierades i föregående steg.
Update-AzDatabricksWorkspace -Name <workspace-name> -ResourceGroupName <resource-group> -EncryptionKeySource Default