Configurer des clés gérées par le client pour DBFS à l’aide d’Azure CLI
Notes
Cette fonctionnalité est disponible uniquement dans le plan Premium.
Vous pouvez utiliser Azure CLI pour configurer votre propre clé de chiffrement afin de chiffrer le compte de stockage de l’espace de travail. Cet article explique comment configurer votre propre clé à partir des coffres Azure Key Vault. Pour obtenir des instructions sur l’utilisation d’une clé à partir d’Azure Key Vault Managed HSM, consultez Configurer les clés gérées par le client HSM pour DBFS à l’aide d’Azure CLI.
Pour plus d’informations sur les clés gérées par le client pour DBFS, consultez Clés gérées par le client pour la racine DBFS.
Installer l’extension CLI Azure Databricks
Installez l’extension CLI Azure Databricks.
az extension add --name databricks
Préparer un espace de travail Azure Databricks nouveau ou existant pour le chiffrement
Remplacez les valeurs d’espace réservé entre crochets par vos propres valeurs. La valeur <workspace-name>
est le nom de ressource tel qu’affiché dans le portail Azure.
az login
az account set --subscription <subscription-id>
Préparez le chiffrement lors de la création de l’espace de travail :
az databricks workspace create --name <workspace-name> --location <workspace-location> --resource-group <resource-group> --sku premium --prepare-encryption
Préparez un espace de travail existant pour le chiffrement :
az databricks workspace update --name <workspace-name> --resource-group <resource-group> --prepare-encryption
Notez le champ principalId
dans la section storageAccountIdentity
de la sortie de la commande. Vous devez le fournir comme valeur d’identité managée lorsque vous configurez votre Key Vault.
Pour plus d’informations sur les commandes Azure CLI pour les espaces de travail Azure Databricks, consultez les informations de référence sur la commande az databricks workspace.
Créer un coffre de clés
Le coffre de clés que vous utilisez pour stocker des clés gérées par le client pour la racine DBFS doit avoir deux paramètres de protection de clés activés, Suppression réversible et Protection contre la suppression définitive. Pour créer un Key Vault avec ces paramètres activés, exécutez les commandes suivantes.
Important
Le coffre de clés doit être dans le même locataire Azure que votre espace de travail Azure Databricks.
Remplacez les valeurs d’espace réservé entre crochets par vos propres valeurs.
az keyvault create \
--name <key-vault> \
--resource-group <resource-group> \
--location <region> \
--enable-soft-delete \
--enable-purge-protection
Pour plus d’informations sur l’activation de la suppression réversible et la protection de purge à l’aide de l’interface Azure CLI, consultez Guide pratique pour utiliser la suppression réversible Key Vault avec l’interface CLI.
Configurer la stratégie d’accès au coffre de clés
Définissez la stratégie d’accès pour le Key Vault afin que l’espace de travail Azure Databricks soit autorisé à y accéder, à l’aide de la commande az keyvault set-policy.
Remplacez les valeurs d’espace réservé entre crochets par vos propres valeurs.
az keyvault set-policy \
--name <key-vault> \
--resource-group <resource-group> \
--object-id <managed-identity> \
--key-permissions get unwrapKey wrapKey
Remplacez <managed-identity>
par la valeur principalId
que vous avez notée lorsque vous avez préparé votre espace de travail pour le chiffrement.
Créer une clé
Créez une clé dans le Key Vault à l’aide de la commande az keyvault key create.
Remplacez les valeurs d’espace réservé entre crochets par vos propres valeurs.
az keyvault key create \
--name <key> \
--vault-name <key-vault>
Le stockage racine DBFS prend en charge les clés RSA et RSA-HSM de taille 2048, 3072 et 4096. Pour plus d’informations sur les clés, consultez À propos des clés Key Vault.
Configurer le chiffrement DBFS avec des clés gérées par le client
Configurez votre espace de travail Azure Databricks pour utiliser la clé que vous avez créée dans votre coffre de clés Azure.
Remplacez les valeurs d’espace réservé entre crochets par vos propres valeurs.
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
Désactiver les clés gérées par le client
Quand vous désactivez les clés gérées par le client, votre compte de stockage est de nouveau chiffré avec des clés gérées par Microsoft.
Remplacez les valeurs d’espace réservé entre crochets par vos propres valeurs et utilisez les variables définies dans les étapes précédentes.
az databricks workspace update --name <workspace-name> --resource-group <resource-group> --key-source Default