Поделиться через


настройка ключей, управляемых клиентом, для DBFS с помощью PowerShell.

Примечание.

Эта функция доступна только в плане Premium.

PowerShell можно использовать для настройки собственного ключа шифрования для шифрования учетной записи хранения рабочей области. В этой статье описывается настройка собственного ключа из хранилищ Azure Key Vault. Инструкции по использованию ключа из управляемого HSM в Azure Key Vault см. в статье Настройка ключей, управляемых клиентом HSM для СУБД с помощью PowerShell.

Дополнительные сведения о ключах, управляемых клиентом для DBFS, см. в разделе "Ключи, управляемые клиентом" для корневого каталога DBFS.

Установка модуля PowerShell Azure Databricks

  1. Установите Azure PowerShell.
  2. Установите модуль PowerShell Azure Databricks.

Подготовка новой или существующей рабочей области Azure Databricks к шифрованию

Замените значения заполнителей в скобках своими собственными значениями. <workspace-name> — это имя ресурса, отображаемое на портале Azure.

Подготовка шифрования при создании рабочей области:

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

Подготовка существующей рабочей области к шифрованию:

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

Дополнительные сведения о командлетах PowerShell для рабочих областей Azure Databricks см. в Справочнике по Az.Databricks.

Создание Key Vault

Хранилище ключей Azure, используемое для хранения ключей, управляемых клиентом, для СУБД по умолчанию (root) должно иметь два параметра защиты ключей, обратимое удаление и защита от очистки.

Внимание

Хранилище ключей должно находиться в том же клиенте Azure, что и рабочая область Azure Databricks.

В версии 2.0.0 и более поздних Az.KeyVault версий модуля обратимое удаление включается по умолчанию при создании нового Key Vault.

В следующем примере создается новое хранилище ключей с включенными свойствами обратимого удаления и защиты от очистки. Замените значения заполнителей в скобках своими собственными значениями.

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

Сведения о включении обратимого удаления и очистки в существующем хранилище ключей с помощью PowerShell см. в статье "Включение обратимого удаления" и "Включение защиты от очистки" в разделе "Использование обратимого удаления Key Vault с помощью PowerShell".

Настройка политики доступа Key Vault

Задайте политику доступа для Key Vault, чтобы рабочая область Azure Databricks получила разрешение на доступ к ней с помощью Set-AzKeyVaultAccessPolicy.

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

Создание ключа

Создайте новый ключ в Key Vault с помощью командлета Add-AzKeyVaultKey . Замените значения заполнителей в скобках своими собственными значениями.

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

Хранилище корневых DBFS поддерживает ключи RSA и RSA-HSM размером 2048, 3072 и 4096. Дополнительные сведения о ключах см. в статье Ключи Key Vault.

Настройка шифрования DBFS с использованием ключей, управляемых клиентом

Настройте рабочую область Azure Databricks для использования ключа, созданного в Azure Key Vault. Замените значения заполнителей в скобках своими собственными значениями.

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

Отключение ключей, управляемых клиентом

При отключении ключей, управляемых клиентом, ваша учетная запись хранения снова будет шифроваться с помощью ключей, управляемых корпорацией Майкрософт.

Замените значения заполнителей в скобках своими собственными значениями и используйте переменные, определенные в ходе предыдущих шагов.

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