Condividi tramite


Configurare le chiavi gestite dal cliente per il file system di Databricks con PowerShell

Nota

Questa funzionalità è disponibile solo nel piano Premium.

È possibile usare PowerShell per configurare la propria chiave di crittografia per crittografare l'account di archiviazione dell'area di lavoro. Questo articolo descrive come configurare la propria chiave dagli insiemi di credenziali di Azure Key Vault. Per istruzioni sull'uso di una chiave dal modulo di protezione hardware gestito di Azure Key Vault, vedere Configurare chiavi gestite dal cliente HSM per DBFS tramite PowerShell.

Per altre informazioni sulle chiavi gestite dal cliente per DBFS, vedere Chiavi gestite dal cliente per la radice DBFS.

Installare il modulo PowerShell di Azure Databricks

  1. Installare Azure PowerShell.
  2. Installare il modulo PowerShell di Azure Databricks.

Preparare un'area di lavoro di Azure Databricks nuova o esistente per la crittografia

Sostituire i valori dei segnaposto tra parentesi con i valori personalizzati. <workspace-name> è il nome della risorsa visualizzato nella portale di Azure.

Preparare la crittografia quando si crea un'area di lavoro:

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

Preparare un'area di lavoro esistente per la crittografia:

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

Per altre informazioni sui cmdlet di PowerShell per le aree di lavoro di Azure Databricks, vedere le informazioni di riferimento su Az.Databricks.

Creare una nuova istanza di Key Vault

L'insieme di credenziali delle chiavi di Azure usato per archiviare le chiavi gestite dal cliente per il file DBFS predefinito (radice) deve avere due impostazioni di protezione delle chiavi abilitate, Eliminazione temporanea e Protezione ripulitura.

Importante

L'area di lavoro di Azure Databricks e Azure Key Vault devono trovarsi nella stessa area e nello stesso tenant di Microsoft Entra.

Nella versione 2.0.0 e successive del modulo, l'eliminazione Az.KeyVault temporanea è abilitata per impostazione predefinita quando si crea un nuovo insieme di credenziali delle chiavi.

Nell'esempio seguente viene creato un nuovo insieme di credenziali delle chiavi con le proprietà Eliminazione temporanea e Protezione eliminazione abilitate. Sostituire i valori dei segnaposto tra parentesi con i valori personalizzati.

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

Per informazioni su come abilitare l'eliminazione temporanea e la protezione dall'eliminazione in un insieme di credenziali delle chiavi esistente con PowerShell, vedere "Abilitazione dell'eliminazione temporanea" e "Abilitazione della protezione dall'eliminazione temporanea" in Come usare l'eliminazione temporanea di Key Vault con PowerShell.

Configurare i criteri di accesso di Key Vault

Impostare i criteri di accesso per Key Vault in modo che l'area di lavoro di Azure Databricks disponga dell'autorizzazione per accedervi, usando Set-AzKeyVaultAccessPolicy.

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

Creare una nuova chiave

Creare una nuova chiave nell'insieme di credenziali delle chiavi usando il cmdlet Add-AzKeyVaultKey . Sostituire i valori dei segnaposto tra parentesi con i valori personalizzati.

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

L'archiviazione radice DBFS supporta chiavi RSA e RSA-HSM di dimensioni 2048, 3072 e 4096. Per altre informazioni sulle chiavi, vedere Informazioni sulle chiavi di Key Vault.

Configurare la crittografia DBFS con chiavi gestite dal cliente

Configurare l'area di lavoro di Azure Databricks per usare la chiave creata nell'insieme di credenziali delle chiavi di Azure. Sostituire i valori dei segnaposto tra parentesi con i valori personalizzati.

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

Disabilitare le chiavi gestite dal cliente

Quando si disabilitano le chiavi gestite dal cliente, l'account di archiviazione viene nuovamente crittografato con chiavi gestite da Microsoft.

Sostituire i valori segnaposto tra parentesi quadre con i propri valori e usare le variabili definite nei passaggi precedenti.

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