Habilitar chaves gerenciadas pelo cliente do HSM para serviços gerenciados
Observação
Esse recurso requer o plano Premium.
Este artigo descreve como configurar sua própria chave do HSM gerenciado do Azure Key Vault. Para obter instruções sobre como usar uma chave dos vaults do Azure Key Vault, consulte Habilitar chaves gerenciadas pelo cliente para serviços gerenciados.
Requisitos
Para usar a CLI do Azure para essas tarefas, instale a ferramenta da CLI do Azure e instale a extensão do Databricks:
az extension add --name databricks
Para usar o PowerShell para essas tarefas, instale Azure PowerShell e instale o módulo do Databricks Powershell. Você também deve fazer logon:
Connect-AzAccount
Para iniciar sessão na sua conta do Azure como utilizador, consulte Iniciar sessão do PowerShell com uma conta de utilizador do Azure Databricks. Para iniciar sessão na sua conta do Azure como entidade de serviço, consulte Iniciar sessão do PowerShell com uma entidade de serviço do Microsoft Entra ID.
Etapa 1: criar um HSM gerenciado do Azure Key Vault e uma chave HSM
Você pode usar um HSM gerenciado do Azure Key Vault existente ou criar e ativar um novo seguindo os inícios rápidos na documentação do HSM gerenciado. Consulte Início rápido: provisionar e ativar um HSM gerenciado usando a CLI do Azure. O HSM gerenciado do Azure Key Vault deve ter a Proteção contra Limpeza habilitada.
Importante
O Key Vault deve estar no mesmo locatário do Azure que o workspace do Azure Databricks.
Para criar uma chave HSM, siga Criar uma chave HSM.
Etapa 2: configurar a atribuição de função HSM gerenciado
Configure uma atribuição de função para o HSM gerenciado do Key Vault para que seu espaço de trabalho do Azure Databricks tenha permissão para acessá-lo. Você pode configurar uma atribuição de função usando o portal do Azure, a CLI do Azure ou o Azure Powershell.
Use o Portal do Azure
- Vá para o recurso HSM gerenciado no portal do Azure.
- No menu esquerdo, em Configurações, selecione RBAC local.
- Clique em Adicionar.
- No campo Função, selecione Usuário de Criptografia de Serviço de Criptografia HSM Gerenciado.
- No campo Escopo, selecione
All keys (/)
. - No campo Entidade de segurança digite
AzureDatabricks
e role até o resultado do aplicativo empresarial que tem uma ID de aplicativo de2ff814a6-3304-4ab8-85cb-cd0e6f879c1d
e selecione-o. - Clique em Criar.
- No menu esquerdo, em Configurações, selecione Teclas e selecione sua chave.
- No campo Identificador de chave copie o texto.
Usar a CLI do Azure
Obtenha a ID do objeto do aplicativo AzureDatabricks com a CLI do Azure.
az ad sp show --id "2ff814a6-3304-4ab8-85cb-cd0e6f879c1d" \ --query "id" \ --output tsv
Configure a atribuição de função HSM gerenciado. Substitua
<hsm-name>
pelo nome do HSM gerenciado e substitua<object-id>
pela ID do objeto do aplicativoAzureDatabricks
da etapa anterior.az keyvault role assignment create --role "Managed HSM Crypto Service Encryption User" --scope "/" --hsm-name <hsm-name> --assignee-object-id <object-id>
Usar o Azure Powershell
Substitua <hsm-name>
pelo nome do HSM gerenciado.
Connect-AzureAD
$managedService = Get-AzureADServicePrincipal \
-Filter "appId eq '2ff814a6-3304-4ab8-85cb-cd0e6f879c1d'"
New-AzKeyVaultRoleAssignment -HsmName <hsm-name> \
-RoleDefinitionName "Managed HSM Crypto Service Encryption User" \
-ObjectId $managedService.ObjectId
Etapa 3: adicionar uma chave a um espaço de trabalho
Você pode criar ou atualizar um espaço de trabalho com uma chave gerenciada pelo cliente para serviços gerenciados, usando o portal do Azure, a CLI do Azure ou o Azure Powershell.
Use o portal do Azure
Acesse a página inicial do Portal do Azure.
Clique em Criar um recurso no canto superior esquerdo da página.
Na barra de pesquisa, digite
Azure Databricks
e clique na opção Azure Databricks.Clique em Criar no widget Azure Databricks.
Insira valores dos campos de entrada nas guias Básico e Rede.
Depois de alcançar a guia Criptografia:
- Para criar um espaço de trabalho, habilite Usar sua própria chave na seção Serviços Gerenciados.
- Para atualizar um espaço de trabalho, habilite os Serviços Gerenciados.
Defina os campos de criptografia.
- No campo Identificador da chave, cole o Identificador da chave da chave do HSM gerenciado.
- No menu suspenso Assinatura, insira o nome da assinatura da sua chave do Azure Key Vault.
Complete as guias restantes e clique em Revisar + Criar (para o novo espaço de trabalho) ou Salvar (para atualizar um espaço de trabalho).
Use a CLI do Azure
Criar ou atualizar um espaço de trabalho:
Para criação e atualização, adicione estes campos ao comando:
managed-services-key-name
: Nome do HSM gerenciadomanaged-services-key-vault
: URI do HSM gerenciadomanaged-services-key-version
: Versão do HSM gerenciado. Use a versão específica da chave e nãolatest
.
Exemplo de criação de um espaço de trabalho usando estes campos:
az databricks workspace create --name <workspace-name> \
--resource-group <resource-group-name> \
--location <location> \
--sku premium \
--managed-services-key-name <hsm-name> \
--managed-services-key-vault <hsm-uri> \
--managed-services-key-version <hsm-version>
Exemplo de atualização de um espaço de trabalho usando estes campos:
az databricks workspace update --name <workspace-name> \
--resource-group <resource-group-name> \
--managed-services-key-name <hsm-name> \
--managed-services-key-vault <hsm-uri> \
--managed-services-key-version <hsm-version>
Importante
Se você girar a chave, deverá manter a chave antiga disponível por 24 horas.
Usar o Powershell
Para criar ou atualizar um espaço de trabalho, adicione os seguintes parâmetros ao comando para sua nova chave:
ManagedServicesKeyVaultPropertiesKeyName
: Nome do HSM gerenciadoManagedServicesKeyVaultPropertiesKeyVaultUri
: URI do HSM gerenciadoManagedServicesKeyVaultPropertiesKeyVersion
: Versão do HSM gerenciado. Use a versão específica da chave e nãolatest
.
Exemplo de criação de espaço de trabalho com estes campos:
New-AzDatabricksWorkspace -Name <workspace-name> \
-ResourceGroupName <resource-group-name> \
-location $keyVault.Location \
-sku premium \
-ManagedServicesKeyVaultPropertiesKeyName $hsm.Name \
-ManagedServicesKeyVaultPropertiesKeyVaultUri $hsm.Uri \
-ManagedServicesKeyVaultPropertiesKeyVersion $hsm.Version
Exemplo de atualização de espaço de trabalho com estes campos:
Update-AzDatabricksWorkspace -Name <workspace-name> \
-ResourceGroupName <resource-group-name> \
-sku premium \
-ManagedServicesKeyVaultPropertiesKeyName $hsm.Name \
-ManagedServicesKeyVaultPropertiesKeyVaultUri $hsm.VaultUri \
-ManagedServicesKeyVaultPropertiesKeyVersion $hsm.Version
Importante
Se você girar a chave, deverá manter a chave antiga disponível por 24 horas.
Etapa 4 (opcional): importar notebooks novamente
Depois de adicionar uma chave de serviços gerenciados para um workspace existente, somente operações de gravação futuras usarão sua chave. Os dados existentes não são criptografados novamente.
É possível exportar todos os notebooks e importá-los novamente para que a chave que criptografa os dados seja protegida e controlada por sua chave. Você pode usar as APIs Exportar e Importar workspace.
Girar a chave posteriormente
Se você já estiver usando uma chave gerenciada pelo cliente para serviços gerenciados, poderá atualizar o workspace com uma nova versão de chave ou uma chave totalmente nova. Isso é chamado de rotação de chave.
Crie uma nova chave ou gire sua chave existente no cofre HSM gerenciado.
Verifique se a nova chave tem a permissões apropriadas.
Atualize o espaço de trabalho com sua nova chave usando o portal, a CLI ou o PowerShell. Consulte Etapa 3: Adicionar uma chave a um espaço de trabalho e siga as instruções para atualização do espaço de trabalho. Certifique-se de usar os mesmos valores para o nome do grupo de recursos e o nome do espaço de trabalho para que ele atualize o espaço de trabalho existente, em vez de criar um novo espaço de trabalho. Além das alterações nos parâmetros relacionados à chave, use os mesmos parâmetros que foram usados para criar o workspace.
Importante
Se você girar a chave, deverá manter a chave antiga disponível por 24 horas.
Opcionalmente, exporte e reimporte notebooks existentes para garantir que todos os notebooks existentes usem sua nova chave.