настройка ключей, управляемых клиентом, для DBFS с помощью PowerShell.
Примечание.
Эта функция доступна только в плане Premium.
PowerShell можно использовать для настройки собственного ключа шифрования для шифрования учетной записи хранения рабочей области. В этой статье описывается настройка собственного ключа из хранилищ Azure Key Vault. Инструкции по использованию ключа из управляемого HSM в Azure Key Vault см. в статье Настройка ключей, управляемых клиентом HSM для СУБД с помощью PowerShell.
Дополнительные сведения о ключах, управляемых клиентом для DBFS, см. в разделе "Ключи, управляемые клиентом" для корневого каталога DBFS.
Установка модуля 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