Condividi tramite


Configurare le chiavi gestite dal cliente per il file system di Databricks con l'interfaccia della riga di comando di Azure

Nota

Questa funzionalità è disponibile solo nel piano Premium.

È possibile usare l'interfaccia della riga di comando di Azure 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 del modulo di protezione hardware gestito di Azure Key Vault, vedere Configurare le chiavi gestite dal cliente del modulo di protezione hardware per DBFS usando l'interfaccia della riga di comando di Azure.

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

Installare l'estensione dell'interfaccia della riga di comando di Azure Databricks

  1. Installare l'interfaccia della riga di comando di Azure

  2. Installare l'estensione dell'interfaccia della riga di comando di Azure Databricks.

    az extension add --name databricks
    

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

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

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

Preparare la crittografia durante la creazione dell'area di lavoro:

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

Preparare un'area di lavoro esistente per la crittografia:

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

Si noti il principalId campo nella storageAccountIdentity sezione dell'output del comando. La si fornirà come valore di identità gestita quando si configura l'insieme di credenziali delle chiavi.

Per altre informazioni sui comandi dell'interfaccia della riga di comando di Azure per le aree di lavoro di Azure Databricks, vedere le informazioni di riferimento sui comandi az databricks workspace.

Creare una nuova istanza di Key Vault

L'insieme di credenziali delle chiavi usato per archiviare le chiavi gestite dal cliente per la radice DBFS deve avere due impostazioni di protezione delle chiavi abilitate, Eliminazione temporanea ed Eliminazione. Per creare un nuovo insieme di credenziali delle chiavi con queste impostazioni abilitate, eseguire i comandi seguenti.

Importante

L'insieme di credenziali delle chiavi deve trovarsi nello stesso tenant di Azure dell'area di lavoro di Azure Databricks.

Sostituire i valori segnaposto tra parentesi quadre con i propri valori.

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

Per altre informazioni sull'abilitazione dell'eliminazione temporanea e della protezione dall'eliminazione tramite l'interfaccia della riga di comando di Azure, vedere Come usare l'eliminazione temporanea di Key Vault con l'interfaccia della riga di comando.

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 il comando az keyvault set-policy .

Sostituire i valori segnaposto tra parentesi quadre con i propri valori.

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

Sostituire <managed-identity> con il valore annotato quando è stata preparata l'area principalId di lavoro per la crittografia.

Creare una nuova chiave

Creare una chiave nell'insieme di credenziali delle chiavi usando il comando az keyvault key create .

Sostituire i valori segnaposto tra parentesi quadre con i propri valori.

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

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 segnaposto tra parentesi quadre con i propri valori.

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

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.

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