Compartilhar via


Configurar chaves gerenciadas pelo cliente para o DBFS usando o PowerShell

Observação

Esse recurso está disponível somente com o plano Premium.

Você pode usar o PowerShell para configurar sua própria chave de criptografia para criptografar a conta de armazenamento do workspace. Este artigo descreve como configurar sua própria chave de cofres do Azure Key Vault. Para obter instruções sobre como usar uma chave do HSM Gerenciado do Azure Key Vault, confira Configurar chaves gerenciadas pelo cliente HSM para DBFS usando o PowerShell.

Para obter mais informações sobre chaves gerenciadas pelo cliente para DBFS, confira Chaves gerenciadas pelo cliente da raiz do DBFS.

Instalar o módulo do PowerShell do Azure Databricks

  1. Instale o Azure PowerShell.
  2. Instale o módulo do PowerShell do Azure Databricks.

Preparar um workspace novo ou existente do Azure Databricks para criptografia

Substitua os valores de espaço reservado entre colchetes por valores próprios. O <workspace-name> é o nome do recurso, conforme exibido, no portal do Azure.

Prepare a criptografia ao criar um workspace:

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

Prepare um workspace existente para criptografia:

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

Para obter mais informações sobre cmdlets do PowerShell para workspaces do Azure Databricks, confira a Referência do Az.Databricks.

Criar um Key Vault

O Azure Key Vault usado para armazenar as chaves gerenciadas pelo cliente para o DBFS padrão (raiz) precisa ter duas configurações de proteção de chave habilitadas: Exclusão temporária e Proteção contra limpeza.

Importante

O Key Vault deve estar no mesmo locatário do Azure que o workspace do Azure Databricks.

Na versão 2.0.0 e posterior do módulo Az.KeyVault, a exclusão temporária é habilitada por padrão quando você cria um cofre de chaves.

O exemplo a seguir cria um cofre de chaves com a exclusão temporária e a proteção contra limpeza habilitadas. Substitua os valores de espaço reservado entre colchetes por valores próprios.

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

Para saber como habilitar a exclusão temporária e a proteção contra limpeza em um cofre de chaves existente com o PowerShell, confira “Como habilitar a exclusão temporária” e “Como habilitar a proteção contra limpeza” em Como usar a exclusão temporária do Key Vault com o PowerShell.

Configurar a política de acesso do cofre de chaves

Defina a política de acesso para o cofre de chaves de modo que o workspace do Azure Databricks tenha permissão para acessá-la usando Set-AzKeyVaultAccessPolicy.

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

Criar uma nova chave

Crie uma chave no cofre de chaves usando o cmdlet Add-AzKeyVaultKey. Substitua os valores de espaço reservado entre colchetes por valores próprios.

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

O armazenamento raiz do DBFS dá suporte às chaves RSA e RSA-HSM de tamanhos 2048, 3072 e 4096. Para obter mais informações sobre chaves, confira Sobre as chaves do Key Vault.

Configurar a criptografia do DBFS com chaves gerenciadas pelo cliente

Configure seu workspace do Azure Databricks para usar a chave que você criou no Azure Key Vault. Substitua os valores de espaço reservado entre colchetes por valores próprios.

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

Desabilitar as chaves gerenciadas pelo cliente

Quando você desabilita chaves gerenciadas pelo cliente, a conta de armazenamento é criptografada novamente com chaves gerenciadas pela Microsoft.

Substitua os valores de espaço reservado entre colchetes por valores próprios e use as variáveis definidas nas etapas anteriores.

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