Partilhar via


Habilite chaves gerenciadas pelo cliente do HSM para serviços gerenciados

Nota

Este recurso requer o plano Premium.

Este artigo descreve como configurar sua própria chave do Azure Key Vault Managed HSM. Para obter instruções sobre como usar uma chave dos cofres do Cofre de Chaves do Azure, consulte Habilitar chaves gerenciadas pelo cliente para serviços gerenciados.

Requisitos

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 após os inícios rápidos na documentação do HSM gerenciado. Consulte Guia de 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 Cofre da Chave deve estar no mesmo locatário do Azure que seu espaço de trabalho do Azure Databricks.

Para criar uma chave HSM, siga Criar uma chave HSM.

Etapa 2: Configurar a atribuição de função do HSM gerenciado

Configure uma atribuição de função para o HSM gerenciado do Cofre de Chaves 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.

Utilizar o portal do Azure

  1. Vá para seu recurso HSM gerenciado no portal do Azure.
  2. No menu à esquerda, em Configurações, selecione RBAC Local.
  3. Clique em Adicionar.
  4. No campo Função, selecione Usuário de criptografia do serviço de criptografia HSM gerenciado.
  5. No campo Escopo, selecione All keys (/).
  6. No campo Entidade de segurança, digite AzureDatabricks e role até o resultado do Aplicativo Empresarial que tem uma ID de Aplicativo e 2ff814a6-3304-4ab8-85cb-cd0e6f879c1d selecione-o.
  7. Clique em Criar.
  8. No menu à esquerda, em Configurações, selecione Teclas e selecione sua chave.
  9. No campo Identificador de chave, copie o texto.

Utilizar a CLI do Azure

  1. 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
    
  2. Configure a atribuição de função HSM gerenciado. Substitua <hsm-name> pelo nome do HSM gerenciado e substitua <object-id> pelo ID do objeto do AzureDatabricks aplicativo 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>
    

Utilizar 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.

Usar o portal do Azure

  1. Vá para a página inicial do Portal do Azure.

  2. Clique em Criar um recurso no canto superior esquerdo da página.

  3. Na barra de pesquisa, digite Azure Databricks e clique na opção Azure Databricks .

  4. Clique em Criar no widget Azure Databricks.

  5. Insira valores para os campos de entrada nas guias Noções básicas e Rede .

  6. Depois de chegar à 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.
  7. Defina os campos de criptografia.

    Show fields in the Managed Disks section of the Azure Databricks blade

    • No campo Identificador de chave, cole o identificador de chave da chave HSM gerenciada.
    • No menu pendente Subscrição, introduza o nome da subscrição da sua chave do Cofre da Chave do Azure.
  8. Preencha as guias restantes e clique em Revisar + Criar (para novo espaço de trabalho) ou Salvar (para atualizar um espaço de trabalho).

Usar 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 gerenciado
  • managed-services-key-vault: URI HSM gerenciado
  • managed-services-key-version: Versão gerenciada do HSM

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, você deve 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 da sua nova chave:

  • ManagedServicesKeyVaultPropertiesKeyName: Nome do HSM gerenciado
  • ManagedServicesKeyVaultPropertiesKeyVaultUri: URI HSM gerenciado
  • ManagedServicesKeyVaultPropertiesKeyVersion: Versão gerenciada do HSM

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 do 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, você deve manter a chave antiga disponível por 24 horas.

Etapa 4 (opcional): Reimportar blocos de anotações

Depois de adicionar inicialmente uma chave para serviços gerenciados para um espaço de trabalho existente, somente operações de gravação futuras usarão sua chave. Os dados existentes não são criptografados novamente.

Pode exportar todos os blocos de notas e, em seguida, voltar a importá-los para que a chave que encripta os dados seja protegida e controlada pela sua chave. Você pode usar as APIs de espaço de trabalho de exportação e importação.

Rodar a chave mais tarde

Se você já estiver usando uma chave gerenciada pelo cliente para serviços gerenciados, poderá atualizar o espaço de trabalho com uma nova versão de chave ou uma chave totalmente nova. Isso é chamado de rotação de chaves.

  1. Crie uma nova chave ou gire a chave existente no Cofre HSM gerenciado.

    Verifique se a nova chave tem as permissões adequadas.

  2. Atualize o espaço de trabalho com sua nova chave usando o portal, CLI ou 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 espaço de trabalho.

    Importante

    Se você girar a chave, você deve manter a chave antiga disponível por 24 horas.

  3. Opcionalmente, exporte e reimporte blocos de notas existentes para garantir que todos os blocos de notas existentes utilizam a sua nova chave.