Konfigurowanie kluczy zarządzanych przez klienta na potrzeby systemu plików DBFS za pomocą interfejsu wiersza polecenia platformy Azure

Uwaga

Ta funkcja jest dostępna tylko w planie Premium.

Interfejs wiersza polecenia platformy Azure umożliwia skonfigurowanie własnego klucza szyfrowania w celu zaszyfrowania głównego konta magazynu systemu plików DBFS. W tym artykule opisano sposób konfigurowania własnego klucza z magazynów usługi Azure Key Vault. Aby uzyskać instrukcje dotyczące używania klucza z zarządzanego modułu HSM usługi Azure Key Vault, zobacz Konfigurowanie kluczy zarządzanych przez klienta modułu HSM dla systemu plików DBFS przy użyciu interfejsu wiersza polecenia platformy Azure.

Aby uzyskać więcej informacji na temat kluczy zarządzanych przez klienta dla systemu plików DBFS, zobacz Klucze zarządzane przez klienta dla katalogu głównego systemu plików DBFS.

Instalowanie rozszerzenia interfejsu wiersza polecenia usługi Azure Databricks

  1. Zainstaluj interfejs wiersza polecenia platformy Azure.

  2. Zainstaluj rozszerzenie interfejsu wiersza polecenia usługi Azure Databricks.

    az extension add --name databricks
    

Przygotowywanie nowego lub istniejącego obszaru roboczego usługi Azure Databricks do szyfrowania

Zastąp wartości symboli zastępczych w nawiasach własnymi wartościami. Jest <workspace-name> to nazwa zasobu wyświetlana w witrynie Azure Portal.

az login
az account set --subscription <subscription-id>

Przygotowanie do szyfrowania podczas tworzenia obszaru roboczego:

az databricks workspace create --name <workspace-name> --location <workspace-location> --resource-group <resource-group> --sku premium --prepare-encryption

Przygotuj istniejący obszar roboczy do szyfrowania:

az databricks workspace update --name <workspace-name> --resource-group <resource-group> --prepare-encryption

Zanotuj principalIdstorageAccountIdentity pole w sekcji danych wyjściowych polecenia. Podczas konfigurowania usługi Key Vault należy podać ją jako wartość tożsamości zarządzanej.

Aby uzyskać więcej informacji na temat poleceń interfejsu wiersza polecenia platformy Azure dla obszarów roboczych usługi Azure Databricks, zobacz dokumentację poleceń az databricks workspace.

Tworzenie nowego magazynu kluczy

Usługa Key Vault używana do przechowywania kluczy zarządzanych przez klienta dla głównego systemu plików DBFS musi mieć włączone dwa ustawienia ochrony kluczy, usuwanie nietrwałe i ochronę przed przeczyszczeniem. Aby utworzyć nową usługę Key Vault z włączonymi tymi ustawieniami, uruchom następujące polecenia.

Ważne

Usługa Key Vault musi znajdować się w tej samej dzierżawie platformy Azure co obszar roboczy usługi Azure Databricks.

Zastąp wartości symboli zastępczych w nawiasach własnymi wartościami.

az keyvault create \
        --name <key-vault> \
        --resource-group <resource-group> \
        --location <region> \
        --enable-soft-delete \
        --enable-purge-protection

Aby uzyskać więcej informacji na temat włączania usuwania nietrwałego i ochrony przed przeczyszczeniem przy użyciu interfejsu wiersza polecenia platformy Azure, zobacz How to use Key Vault soft-delete with CLI (Jak używać usuwania nietrwałego usługi Key Vault za pomocą interfejsu wiersza polecenia).

Konfigurowanie zasad dostępu usługi Key Vault

Ustaw zasady dostępu dla usługi Key Vault, aby obszar roboczy usługi Azure Databricks miał uprawnienia dostępu do niego przy użyciu polecenia az keyvault set-policy .

Zastąp wartości symboli zastępczych w nawiasach własnymi wartościami.

az keyvault set-policy \
        --name <key-vault> \
        --resource-group <resource-group> \
        --object-id <managed-identity>  \
        --key-permissions get unwrapKey wrapKey

Zastąp <managed-identity>principalId wartość zanotowaną podczas przygotowywania obszaru roboczego do szyfrowania.

Tworzenie nowego klucza

Utwórz klucz w usłudze Key Vault przy użyciu polecenia az keyvault key create .

Zastąp wartości symboli zastępczych w nawiasach własnymi wartościami.

az keyvault key create \
       --name <key> \
       --vault-name <key-vault>

Magazyn główny DBFS obsługuje klucze RSA i RSA-HSM o rozmiarach 2048, 3072 i 4096. Aby uzyskać więcej informacji na temat kluczy, zobacz Informacje o kluczach magazynu kluczy).

Konfigurowanie szyfrowania DBFS przy użyciu kluczy zarządzanych przez klienta

Skonfiguruj obszar roboczy usługi Azure Databricks pod kątem użycia klucza utworzonego w usłudze Azure Key Vault.

Zastąp wartości symboli zastępczych w nawiasach własnymi wartościami.

key_vault_uri=$(az keyvault show \
 --name <key-vault> \
 --resource-group <resource-group> \
 --query properties.vaultUri \
--output tsv)
key_version=$(az keyvault key list-versions \
 --name <key> \ --vault-name <key-vault> \
 --query [-1].kid \
--output tsv | cut -d '/' -f 6)
az databricks workspace update --name <workspace-name> --resource-group <resource-group> --key-source Microsoft.KeyVault --key-name <key> --key-vault $key_vault_uri --key-version $key_version

Wyłączanie kluczy zarządzanych przez klienta

Po wyłączeniu kluczy zarządzanych przez klienta konto magazynu jest ponownie szyfrowane przy użyciu kluczy zarządzanych przez firmę Microsoft.

Zastąp wartości symboli zastępczych w nawiasach własnymi wartościami i użyj zmiennych zdefiniowanych w poprzednich krokach.

az databricks workspace update --name <workspace-name> --resource-group <resource-group> --key-source Default