Konfigurowanie kluczy zarządzanych przez klienta przez moduł HSM dla dysków zarządzanych platformy Azure

Obciążenia obliczeniowe usługi Azure Databricks w płaszczyźnie obliczeniowej przechowują dane tymczasowe na dyskach zarządzanych platformy Azure. Domyślnie dane przechowywane na zarządzanych dyskach są szyfrowane w spoczynku przy użyciu szyfrowania po stronie serwera za pomocą kluczy zarządzanych przez Microsoft. W tym artykule opisano sposób konfigurowania klucza zarządzanego przez klienta z modułu HSM usługi Azure Key Vault dla obszaru roboczego usługi Azure Databricks do użycia na potrzeby szyfrowania dysków zarządzanych. Aby uzyskać instrukcje dotyczące używania klucza z magazynów usługi Azure Key Vault, zobacz Konfigurowanie kluczy zarządzanych przez klienta dla dysków zarządzanych platformy Azure.

Ważne

  • Klucze zarządzane przez klienta dla magazynu dysków zarządzanych mają zastosowanie do dysków danych, ale nie mają zastosowania do dysków systemu operacyjnego.
  • Klucze zarządzane przez klienta dla magazynu dysków zarządzanych nie mają zastosowania do zasobów obliczeniowych bezserwerowych, takich jak bezserwerowe magazyny SQL i obsługa modeli. Dyski używane w przypadku bezserwerowych zasobów obliczeniowych mają krótki czas istnienia i są powiązane z cyklem życia obciążenia bezserwerowego. Gdy zasoby obliczeniowe są zatrzymywane lub skalowane w dół, maszyny wirtualne i ich magazyn są niszczone.

Wymagania

  • Obszar roboczy usługi Azure Databricks musi znajdować się w planie Premium.

  • Jeśli chcesz włączyć automatyczną rotację, obsługiwane są tylko klucze RSA-HSM o rozmiarach 2048-bitowych, 3072-bitowych i 4096-bitowych.

  • Ta funkcja nie jest obsługiwana w przypadku obszarów roboczych ze zgodnością FedRAMP. Aby uzyskać więcej informacji, skontaktuj się z zespołem konta usługi Azure Databricks.

  • Aby użyć interfejsu wiersza polecenia platformy Azure dla tych zadań, zainstaluj narzędzie interfejsu wiersza polecenia platformy Azure i zainstaluj rozszerzenie usługi Databricks:

    az extension add --name databricks
    
  • Aby użyć programu PowerShell dla tych zadań, zainstaluj program Azure PowerShell i zainstaluj moduł Programu PowerShell usługi Databricks. Musisz również zalogować się:

    Connect-AzAccount
    

    Aby zalogować się do konta platformy Azure jako użytkownik, zobacz Logowanie programu PowerShell przy użyciu konta użytkownika usługi Azure Databricks. Aby zalogować się do konta platformy Azure jako jednostki usługi, zobacz Logowanie programu PowerShell przy użyciu jednostki usługi Microsoft Entra ID.

Krok 1. Tworzenie zarządzanego modułu HSM usługi Azure Key Vault i klucza HSM

Możesz użyć istniejącego zarządzanego modułu HSM usługi Azure Key Vault lub utworzyć i aktywować nowy, postępując zgodnie z przewodnikami Szybki start w dokumentacji zarządzanego modułu HSM. Zobacz Szybki start: aprowizuj i aktywuj zarządzany moduł HSM przy użyciu interfejsu wiersza polecenia platformy Azure. Zarządzany moduł HSM usługi Azure Key Vault musi mieć włączoną ochronę przed przeczyszczeniem .

Aby utworzyć klucz HSM, wykonaj czynności opisane w sekcji Tworzenie klucza HSM.

Krok 2. Zatrzymaj wszystkie zasoby obliczeniowe, jeśli aktualizujesz obszar roboczy, aby początkowo dodać klucz

Jeśli dodasz klucz zarządzany przez klienta dla dysków zarządzanych początkowo w istniejącym obszarze roboczym, zatrzymaj wszystkie zasoby obliczeniowe (klastry, pule, klasyczne lub pro magazyny SQL) przed aktualizacją.

Po zakończeniu aktualizacji można uruchomić zatrzymane zasoby obliczeniowe. W przypadku obszaru roboczego, który ma już klucz zarządzany przez klienta dla dysków zarządzanych, możesz obrócić klucz bez przerywania zasobów obliczeniowych.

Krok 3. Tworzenie lub aktualizowanie obszaru roboczego

Obszar roboczy można utworzyć lub zaktualizować przy użyciu klucza zarządzanego przez klienta dla dysków zarządzanych przy użyciu witryny Azure Portal, interfejsu wiersza polecenia platformy Azure lub programu Azure PowerShell.

Korzystanie z witryny Azure Portal

W tej sekcji opisano sposób używania witryny Azure Portal do tworzenia lub aktualizowania obszaru roboczego przy użyciu kluczy zarządzanych przez klienta dla dysków zarządzanych.

  1. Rozpocznij tworzenie lub aktualizowanie obszaru roboczego:

    Utwórz nowy obszar roboczy z kluczem:

    1. Przejdź do strony głównej witryny Azure Portal i kliknij pozycję Utwórz zasób w lewym górnym rogu strony.
    2. Na pasku wyszukiwania wpisz Azure Databricks i kliknij pozycję Azure Databricks.
    3. Wybierz pozycję Utwórz z poziomu widżetu usługi Azure Databricks.
    4. Wprowadź wartości w polach formularza na kartach Podstawy i Sieć.
    5. Na karcie Szyfrowanie zaznacz pole wyboru Użyj własnego klucza w sekcji Dyski zarządzane.

    Początkowo dodaj klucz do istniejącego obszaru roboczego:

    1. Przejdź do strony głównej witryny Azure Portal dla usługi Azure Databricks.
    2. Przejdź do istniejącego obszaru roboczego usługi Azure Databricks.
    3. Otwórz kartę Szyfrowanie z panelu po lewej stronie.
    4. W sekcji Klucze zarządzane przez klienta włącz Dyski zarządzane.
  2. Ustaw pola szyfrowania.

    Pokaż pola w sekcji Dyski zarządzane bloku usługi Azure Databricks

    • W polu Identyfikator klucza wklej identyfikator klucza zarządzanego modułu HSM.
    • Na liście rozwijanej Subskrypcja wprowadź nazwę subskrypcji zarządzanego klucza HSM.
    • Aby włączyć automatyczne obracanie klucza, włącz opcję Włącz automatyczne obracanie klucza.
  3. Wypełnij pozostałe karty i kliknij pozycję Przejrzyj i utwórz (dla nowego obszaru roboczego) lub Zapisz (w celu zaktualizowania obszaru roboczego).

  4. Po wdrożeniu obszaru roboczego przejdź do nowego obszaru roboczego usługi Azure Databricks.

  5. Na karcie Przegląd obszaru roboczego usługi Azure Databricks kliknij pozycję Zarządzana grupa zasobów.

  6. Na karcie Przegląd zarządzanej grupy zasobów poszukaj obiektu typu Zestaw szyfrowania dysków, który został utworzony w tej grupie zasobów. Skopiuj nazwę tego zestawu szyfrowania dysków.

Korzystanie z interfejsu wiersza polecenia platformy Azure

W przypadku nowych i zaktualizowanych obszarów roboczych dodaj następujące parametry do polecenia:

  • disk-key-name: Nazwa zarządzanego modułu HSM
  • disk-key-vault: Identyfikator URI zarządzanego modułu HSM
  • disk-key-version: Zarządzana wersja modułu HSM
  • disk-key-auto-rotation: Włącz automatyczne obracanie klucza (true lub false). To pole jest opcjonalne. Wartość domyślna to false.
  1. Tworzenie lub aktualizowanie obszaru roboczego:

    • Przykład tworzenia obszaru roboczego przy użyciu tych parametrów dysku zarządzanego:

      az databricks workspace create --name <workspace-name> \
      --resource-group <resource-group-name> \
      --location <location> \
      --sku premium --disk-key-name <hsm-name> \
      --disk-key-vault <hsm-uri> \
      --disk-key-version <hsm-version> \
      --disk-key-auto-rotation <true-or-false>
      
    • Przykład aktualizowania obszaru roboczego przy użyciu tych parametrów dysku zarządzanego:

      az databricks workspace update \
      --name <workspace-name> \
      --resource-group <resource-group-name> \
      --disk-key-name <hsm-name> \
      --disk-key-vault <hsm-uri> \
      --disk-key-version <hsm-version> \
      --disk-key-auto-rotation <true-or-false>
      

    W danych wyjściowych jednego z tych poleceń istnieje managedDiskIdentity obiekt . Zapisz wartość principalId właściwości w tym obiekcie. Jest on używany w późniejszym kroku jako identyfikator podmiotu zabezpieczeń.

Korzystanie z programu PowerShell

W przypadku nowych i zaktualizowanych obszarów roboczych dodaj następujące parametry do polecenia:

  • location: Lokalizacja obszaru roboczego
  • ManagedDiskKeyVaultPropertiesKeyName: Nazwa zarządzanego modułu HSM
  • ManagedDiskKeyVaultPropertiesKeyVaultUri: Identyfikator URI zarządzanego modułu HSM
  • ManagedDiskKeyVaultPropertiesKeyVersion: Zarządzana wersja modułu HSM
  • ManagedDiskRotationToLatestKeyVersionEnabled: Włącz automatyczne obracanie klucza (true lub false). To pole jest opcjonalne. Wartością domyślną jest false.
  1. Tworzenie lub aktualizowanie obszaru roboczego:
    • Przykład tworzenia obszaru roboczego przy użyciu parametrów dysku zarządzanego:

      $workspace = New-AzDatabricksWorkspace -Name <workspace-name> \
      -ResourceGroupName <resource-group-name> \
      -location <location> \
      -Sku premium \
      -ManagedDiskKeyVaultPropertiesKeyName <key-name> \
      -ManagedDiskKeyVaultPropertiesKeyVaultUri <hsm-uri> \
      -ManagedDiskKeyVaultPropertiesKeyVersion <key-version> -ManagedDiskRotationToLatestKeyVersionEnabled
      
    • Przykład aktualizowania obszaru roboczego przy użyciu parametrów dysku zarządzanego:

      $workspace = Update-AzDatabricksworkspace -Name <workspace-name> \
      -ResourceGroupName <resource-group-name> \
      -ManagedDiskKeyVaultPropertiesKeyName <key-name> \
      -ManagedDiskKeyVaultPropertiesKeyVaultUri <hsm-uri> \
      -ManagedDiskKeyVaultPropertiesKeyVersion <key-version> -ManagedDiskRotationToLatestKeyVersionEnabled
      

Krok 4. Konfigurowanie przypisania roli zarządzanego modułu HSM

Skonfiguruj przypisanie roli dla zarządzanego modułu HSM usługi Key Vault, aby obszar roboczy usługi Azure Databricks miał uprawnienia dostępu do niego. Przypisanie roli można skonfigurować przy użyciu witryny Azure Portal, interfejsu wiersza polecenia platformy Azure lub programu PowerShell.

Korzystanie z witryny Azure Portal

  1. Przejdź do zasobu zarządzanego modułu HSM w witrynie Azure Portal.
  2. W menu po lewej stronie w obszarze Ustawienia wybierz pozycję Kontrola dostępu oparta na rolach lokalnych.
  3. Kliknij przycisk Dodaj.
  4. W polu Rola wybierz pozycję Zarządzany użytkownik szyfrowania usługi kryptograficznej HSM.
  5. W polu Zakres wybierz pozycję All keys (/).
  6. W polu Podmiot zabezpieczeń wprowadź nazwę zestawu szyfrowania dysków w zarządzanej grupie zasobów obszaru roboczego usługi Azure Databricks na pasku wyszukiwania. Wybierz wynik.
  7. Kliknij pozycję Utwórz.

Interfejs wiersza polecenia platformy Azure

Skonfiguruj przypisanie roli zarządzanego modułu HSM. Zastąp <hsm-name> ciąg nazwą zarządzanego modułu HSM i zastąp <principal-id> ciąg identyfikatorem principalId managedDiskIdentity elementu z poprzedniego kroku.

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

Korzystanie z programu Azure PowerShell

Zastąp <hsm-name> ciąg nazwą zarządzanego modułu HSM.

New-AzKeyVaultRoleAssignment -HsmName <hsm-name> \
-RoleDefinitionName "Managed HSM Crypto Service Encryption User" \
-ObjectId $workspace.ManagedDiskIdentityPrincipalId

Krok 5. Uruchamianie wcześniej zakończonych zasobów obliczeniowych

Ten krok jest niezbędny tylko w przypadku zaktualizowania obszaru roboczego w celu dodania klucza po raz pierwszy, w takim przypadku przerwanie działania wszystkich uruchomionych zasobów obliczeniowych w poprzednim kroku. Jeśli utworzono nowy obszar roboczy lub tylko obracasz klucz, zasoby obliczeniowe nie zostały zakończone w poprzednich krokach. W takim przypadku można pominąć ten krok.

  1. Upewnij się, że aktualizacja obszaru roboczego została ukończona. Jeśli klucz był jedyną zmianą szablonu, zwykle kończy się to w mniej niż pięć minut, w przeciwnym razie może upłynąć więcej czasu.
  2. Ręcznie uruchom wszystkie zakończone wcześniej zasoby obliczeniowe.

Jeśli nie można pomyślnie uruchomić żadnych zasobów obliczeniowych, zazwyczaj jest to spowodowane tym, że należy udzielić uprawnienia zestawu szyfrowania dysków w celu uzyskania dostępu do usługi Key Vault.

Obracanie klucza w późniejszym czasie

Istnieją dwa typy rotacji kluczy w istniejącym obszarze roboczym, który ma już klucz:

  • Automatyczna rotacja: jeśli rotationToLatestKeyVersionEnabled dotyczy true obszaru roboczego, zestaw szyfrowania dysku wykrywa zmianę wersji klucza i wskazuje najnowszą wersję klucza.
  • Rotacja ręczna: możesz zaktualizować istniejący obszar roboczy klucza zarządzanego przez klienta przy użyciu nowego klucza. Postępuj zgodnie z powyższymi instrukcjami, tak jakby początkowo dodawano klucz do istniejącego obszaru roboczego, z ważną różnicą, że nie trzeba przerywać żadnych uruchomionych zasobów obliczeniowych.

W przypadku obu typów rotacji usługa Azure Virtual Machine Storage automatycznie pobiera nowy klucz i używa go do szyfrowania klucza szyfrowania danych. Nie ma to wpływu na zasoby obliczeniowe usługi Azure Databricks. Aby uzyskać więcej informacji, zobacz Klucze zarządzane przez klienta w dokumentacji platformy Azure.

Przed rotacją klucza nie trzeba przerywać zasobów obliczeniowych.