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


Включение ключей, управляемых клиентом HSM для управляемых служб

Примечание.

Для этой функции требуется план "Премиум".

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

Требования

Шаг 1. Создание управляемого HSM в Azure Key Vault и ключа HSM

Вы можете использовать существующий управляемый HSM в Azure Key Vault или создать и активировать новую, следуя кратким руководствам в документации по управляемому HSM. См . краткое руководство. Подготовка и активация управляемого устройства HSM с помощью Azure CLI. Управляемый модуль HSM в Azure Key Vault должен иметь включенную защиту очистки.

Внимание

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

Чтобы создать ключ HSM, следуйте инструкциям по созданию ключа HSM.

Шаг 2. Настройка назначения управляемой роли HSM

Настройте назначение ролей для управляемого HSM Key Vault, чтобы рабочая область Azure Databricks получила разрешение на доступ к нему. Можно настроить назначение ролей с помощью портал Azure, Azure CLI или Azure PowerShell.

Использование портала Azure

  1. Перейдите к ресурсу Управляемого устройства HSM в портал Azure.
  2. В меню слева в разделе "Параметры" выберите "Локальный RBAC".
  3. Нажмите кнопку Добавить.
  4. В поле "Роль" выберите пользователя шифрования службы шифрования управляемого шифрования HSM.
  5. В поле "Область" выберите All keys (/).
  6. В поле "Субъект безопасности" введите AzureDatabricks и прокрутите список результатов корпоративного приложения с идентификатором 2ff814a6-3304-4ab8-85cb-cd0e6f879c1d приложения и выберите его.
  7. Нажмите кнопку Создать.
  8. В меню слева в разделе "Параметры" выберите "Ключи" и выберите ключ.
  9. Скопируйте текст в поле "Идентификатор ключа".

Использование Azure CLI

  1. Получите идентификатор объекта приложения AzureDatabricks с помощью Azure CLI.

    az ad sp show --id "2ff814a6-3304-4ab8-85cb-cd0e6f879c1d" \
                    --query "id" \
                    --output tsv
    
  2. Настройте назначение роли управляемого устройства HSM. Замените <hsm-name> управляемым именем HSM и замените <object-id> идентификатором AzureDatabricks объекта приложения на предыдущем шаге.

    az keyvault role assignment create --role "Managed HSM Crypto Service Encryption User"
        --scope "/" --hsm-name <hsm-name>
        --assignee-object-id <object-id>
    

Использование Azure PowerShell

Замените <hsm-name> управляемым именем HSM.

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

Шаг 3. Добавление ключа в рабочую область

Вы можете создать или обновить рабочую область с ключом, управляемым клиентом для управляемых служб, с помощью портал Azure, Azure CLI или Azure PowerShell.

Использование портала Azure

  1. Перейдите на домашнюю страницу портала Azure.

  2. Щелкните " Создать ресурс " в левом верхнем углу страницы.

  3. В строке поиска введите Azure Databricks и выберите параметр Azure Databricks .

  4. Нажмите кнопку "Создать " в мини-приложении Azure Databricks.

  5. Введите значения для полей ввода на вкладках "Основы" и "Сеть ".

  6. После перехода на вкладку "Шифрование ":

    • Чтобы создать рабочую область, включите собственный ключ в разделе "Управляемые службы".
    • Для обновления рабочей области включите управляемые службы.
  7. Задайте поля шифрования.

    Отображение полей в разделе Управляемые диски колонки Azure Databricks

    • В поле "Идентификатор ключа" вставьте идентификатор ключа управляемого ключа HSM.
    • В раскрывающемся списке подписки введите имя подписки ключа Azure Key Vault.
  8. Заполните оставшиеся вкладки и нажмите кнопку "Просмотр и создание " (для новой рабочей области) или "Сохранить " (для обновления рабочей области).

Использование Azure CLI

Создайте или обновите рабочую область:

Для создания и обновления добавьте следующие поля в команду:

  • managed-services-key-name: управляемое имя HSM
  • managed-services-key-vault: управляемый URI HSM
  • managed-services-key-version: управляемая версия HSM

Пример создания рабочей области с помощью следующих полей:

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>

Пример обновления рабочей области с помощью следующих полей:

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>

Внимание

При смене ключа необходимо сохранить старый ключ доступным в течение 24 часов.

Использование PowerShell

Чтобы создать или обновить рабочую область, добавьте следующие параметры в команду для нового ключа:

  • ManagedServicesKeyVaultPropertiesKeyName: управляемое имя HSM
  • ManagedServicesKeyVaultPropertiesKeyVaultUri: управляемый URI HSM
  • ManagedServicesKeyVaultPropertiesKeyVersion: управляемая версия HSM

Пример создания рабочей области с этими полями:

New-AzDatabricksWorkspace -Name <workspace-name> \
-ResourceGroupName <resource-group-name> \
-location $keyVault.Location \
-sku premium \
-ManagedServicesKeyVaultPropertiesKeyName $hsm.Name \
-ManagedServicesKeyVaultPropertiesKeyVaultUri $hsm.Uri \
-ManagedServicesKeyVaultPropertiesKeyVersion $hsm.Version

Пример обновления рабочей области с этими полями:

Update-AzDatabricksWorkspace -Name <workspace-name> \
-ResourceGroupName <resource-group-name> \
-sku premium \
-ManagedServicesKeyVaultPropertiesKeyName $hsm.Name \
-ManagedServicesKeyVaultPropertiesKeyVaultUri $hsm.VaultUri \
-ManagedServicesKeyVaultPropertiesKeyVersion $hsm.Version

Внимание

При смене ключа необходимо сохранить старый ключ доступным в течение 24 часов.

Шаг 4 (необязательно): повторно импортируйте записные книжки

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

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

Смена ключа в дальнейшем

Если вы уже используете управляемый клиентом ключ для управляемых служб, можно обновить рабочую область, используя новую версию ключа или полностью новый ключ. Это называется сменой ключей.

  1. Создайте новый ключ или измените существующий ключ в Управляемом хранилище HSM.

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

  2. Обновите рабочую область с помощью нового ключа с помощью портала, интерфейса командной строки или PowerShell. См . шаг 3. Добавление ключа в рабочую область и выполнение инструкций по обновлению рабочей области . Убедитесь, что вы используете те же значения для имени группы ресурсов и имени рабочей области, чтобы обновить существующую рабочую область, а не создать новую рабочую область. За исключением изменений в параметрах, связанных с ключами, используйте те же параметры, которые использовались для создания рабочей области.

    Внимание

    При смене ключа необходимо сохранить старый ключ доступным в течение 24 часов.

  3. При необходимости экспортируйте и повторно импортируйте существующие записные книжки , чтобы все существующие записные книжки использовали новый ключ.