Szyfrowanie usługi Azure Data Factory przy użyciu kluczy zarządzanych przez klienta

DOTYCZY: Azure Data Factory Azure Synapse Analytics

Napiwek

Wypróbuj usługę Data Factory w usłudze Microsoft Fabric — rozwiązanie analityczne typu all-in-one dla przedsiębiorstw. Usługa Microsoft Fabric obejmuje wszystko, od przenoszenia danych do nauki o danych, analizy w czasie rzeczywistym, analizy biznesowej i raportowania. Dowiedz się, jak bezpłatnie rozpocząć nową wersję próbną !

Usługa Azure Data Factory szyfruje dane w spoczynku, w tym definicje jednostek i wszelkie dane buforowane podczas przebiegów. Domyślnie dane są szyfrowane przy użyciu losowo wygenerowanego klucza zarządzanego przez firmę Microsoft, który jest unikatowo przypisany do fabryki danych. Aby uzyskać dodatkowe gwarancje bezpieczeństwa, możesz teraz włączyć funkcję Bring Your Own Key (BYOK) z kluczami zarządzanymi przez klienta w usłudze Azure Data Factory. Po określeniu klucza zarządzanego przez klienta usługa Data Factory używa zarówno klucza systemowego fabryki, jak i klucza cmK do szyfrowania danych klienta. Brak jednego z nich spowoduje odmowę dostępu do danych i fabryki.

Usługa Azure Key Vault musi przechowywać klucze zarządzane przez klienta. Możesz utworzyć własne klucze i przechowywać je w magazynie kluczy lub użyć interfejsów API usługi Azure Key Vault do generowania kluczy. Magazyn kluczy i usługa Data Factory muszą znajdować się w tej samej dzierżawie firmy Microsoft i w tym samym regionie, ale mogą znajdować się w różnych subskrypcjach. Aby uzyskać więcej informacji na temat usługi Azure Key Vault, zobacz Co to jest usługa Azure Key Vault?

Informacje o kluczach zarządzanych przez klienta

Na poniższym diagramie pokazano, jak usługa Data Factory używa identyfikatora Entra firmy Microsoft i usługi Azure Key Vault do wykonywania żądań przy użyciu klucza zarządzanego przez klienta:

Diagram showing how customer-managed keys work in Azure Data Factory.

Poniższa lista zawiera opis kroków numerowanych na diagramie:

  1. Administrator usługi Azure Key Vault udziela uprawnień do kluczy szyfrowania tożsamości zarządzanej skojarzonej z usługą Data Factory
  2. Administrator usługi Data Factory umożliwia funkcję klucza zarządzanego przez klienta w fabryce
  3. Usługa Data Factory używa tożsamości zarządzanej skojarzonej z fabryką do uwierzytelniania dostępu do usługi Azure Key Vault za pośrednictwem identyfikatora Entra firmy Microsoft
  4. Usługa Data Factory opakowuje klucz szyfrowania fabryki przy użyciu klucza klienta w usłudze Azure Key Vault
  5. W przypadku operacji odczytu/zapisu usługa Data Factory wysyła żądania do usługi Azure Key Vault, aby odpakować klucz szyfrowania konta w celu wykonania operacji szyfrowania i odszyfrowywania

Istnieją dwa sposoby dodawania szyfrowania klucza zarządzanego przez klienta do fabryk danych. Jeden z nich jest w czasie tworzenia fabryki w witrynie Azure Portal, a drugi to tworzenie fabryki w interfejsie użytkownika usługi Data Factory.

Wymagania wstępne — konfigurowanie usługi Azure Key Vault i generowanie kluczy

Włączanie usuwania nietrwałego i nie przeczyszczanie w usłudze Azure Key Vault

Użycie kluczy zarządzanych przez klienta w usłudze Data Factory wymaga ustawienia dwóch właściwości w usłudze Key Vault, usuwania nietrwałego i nie przeczyszczania. Te właściwości można włączyć przy użyciu programu PowerShell lub interfejsu wiersza polecenia platformy Azure w nowym lub istniejącym magazynie kluczy. Aby dowiedzieć się, jak włączyć te właściwości w istniejącym magazynie kluczy, zobacz Azure Key Vault recovery management with soft delete and purge protection (Zarządzanie odzyskiwaniem usługi Azure Key Vault za pomocą usuwania nietrwałego i ochrony przed przeczyszczeniem)

Jeśli tworzysz nową usługę Azure Key Vault za pośrednictwem witryny Azure Portal, usuwanie nietrwałe i nie przeczyszczanie można włączyć w następujący sposób:

Screenshot showing how to enable Soft Delete and Purge Protection upon creation of Key Vault.

Udzielanie usłudze Data Factory dostępu do usługi Azure Key Vault

Upewnij się, że usługi Azure Key Vault i Azure Data Factory znajdują się w tej samej dzierżawie firmy Microsoft i w tym samym regionie. Z poziomu kontroli dostępu do usługi Azure Key Vault przyznaj fabryki danych następujące uprawnienia: Pobieranie, odpakowywanie klucza i zawijanie klucza. Te uprawnienia są wymagane do włączenia kluczy zarządzanych przez klienta w usłudze Data Factory.

Generowanie lub przekazywanie klucza zarządzanego przez klienta do usługi Azure Key Vault

Możesz utworzyć własne klucze i przechowywać je w magazynie kluczy. Możesz też użyć interfejsów API usługi Azure Key Vault do generowania kluczy. Tylko klucze RSA są obsługiwane w przypadku szyfrowania w usłudze Data Factory. Obsługiwany jest również moduł RSA-HSM. Aby uzyskać więcej informacji, zobacz Informacje o kluczach, wpisach tajnych i certyfikatach.

Screenshot showing how to generate Customer-Managed Key.

Włączanie kluczy zarządzanych przez klienta

Tworzenie po fabryce w interfejsie użytkownika usługi Data Factory

W tej sekcji przedstawiono proces dodawania szyfrowania kluczy zarządzanych przez klienta w interfejsie użytkownika usługi Data Factory po utworzeniu fabryki.

Uwaga

Klucz zarządzany przez klienta można skonfigurować tylko w pustej fabryce danych. Fabryka danych nie może zawierać żadnych zasobów, takich jak połączone usługi, potoki i przepływy danych. Zaleca się włączenie klucza zarządzanego przez klienta bezpośrednio po utworzeniu fabryki.

Ważne

Takie podejście nie działa w przypadku zarządzanych fabryk z włączoną siecią wirtualną. Rozważ alternatywną trasę, jeśli chcesz zaszyfrować takie fabryki.

  1. Upewnij się, że tożsamość usługi zarządzanej (MSI) fabryki danych ma uprawnienia Get, Unwrap Key i Wrap Key do usługi Key Vault.

  2. Upewnij się, że usługa Data Factory jest pusta. Fabryka danych nie może zawierać żadnych zasobów, takich jak połączone usługi, potoki i przepływy danych. Na razie wdrożenie klucza zarządzanego przez klienta w niepustej fabryce spowoduje wystąpienie błędu.

  3. Aby zlokalizować identyfikator URI klucza w witrynie Azure Portal, przejdź do usługi Azure Key Vault i wybierz ustawienie Klucze. Wybierz żądany klucz, a następnie wybierz klucz, aby wyświetlić jego wersje. Wybierz wersję klucza, aby wyświetlić ustawienia

  4. Skopiuj wartość pola Identyfikator klucza, który udostępnia identyfikator URI Screenshot of getting key URI from Key Vault.

  5. Uruchom portal usługi Azure Data Factory i użyj paska nawigacyjnego po lewej stronie, przejdź do portalu zarządzania usługi Data Factory

  6. Kliknij ikonę Klucz zarządzany przez klienta Screenshot how to enable Customer-managed Key in Data Factory UI.

  7. Wprowadź identyfikator URI klucza zarządzanego przez klienta skopiowany przed

  8. Kliknij pozycję Zapisz i włączono szyfrowanie kluczy zarządzanych przez klienta dla usługi Data Factory

Podczas tworzenia fabryki w witrynie Azure Portal

W tej sekcji przedstawiono procedurę dodawania szyfrowania kluczy zarządzanych przez klienta w witrynie Azure Portal podczas wdrażania fabryki.

Aby zaszyfrować fabrykę, usługa Data Factory musi najpierw pobrać klucz zarządzany przez klienta z usługi Key Vault. Ponieważ wdrażanie fabryki jest nadal w toku, tożsamość usługi zarządzanej (MSI) nie jest jeszcze dostępna do uwierzytelniania w usłudze Key Vault. W związku z tym, aby użyć tego podejścia, klient musi przypisać tożsamość zarządzaną przypisaną przez użytkownika (UA-MI) do fabryki danych. Przyjmiemy role zdefiniowane w usłudze UA-MI i uwierzytelniają się w usłudze Key Vault.

Aby dowiedzieć się więcej na temat tożsamości zarządzanej przypisanej przez użytkownika, zobacz Typy tożsamości zarządzanych i Przypisanie roli dla tożsamości zarządzanej przypisanej przez użytkownika.

  1. Upewnij się, że tożsamość zarządzana przypisana przez użytkownika (UA-MI) ma uprawnienia Pobierz, Odpakuj klucz i Zawijanie klucza do usługi Key Vault

  2. W obszarze Karta Zaawansowane zaznacz pole wyboru Włącz szyfrowanie przy użyciu klucza zarządzanego przez klientaScreenshot of Advanced tab for data factory creation experience in Azure portal.

  3. Podaj adres URL klucza zarządzanego przez klienta przechowywanego w usłudze Key Vault

  4. Wybierz odpowiednią tożsamość zarządzaną przypisaną przez użytkownika do uwierzytelniania w usłudze Key Vault

  5. Kontynuuj wdrażanie fabryki

Aktualizowanie wersji klucza

Podczas tworzenia nowej wersji klucza zaktualizuj fabrykę danych, aby korzystała z nowej wersji. Wykonaj podobne kroki, jak opisano w sekcji Interfejs użytkownika usługi Data Factory, w tym:

  1. Znajdowanie identyfikatora URI dla nowej wersji klucza za pośrednictwem portalu usługi Azure Key Vault

  2. Przejdź do ustawienia klucza zarządzanego przez klienta

  3. Zastąp i wklej identyfikator URI dla nowego klucza

  4. Kliknij pozycję Zapisz , a usługa Data Factory będzie teraz szyfrować przy użyciu nowej wersji klucza

Używanie innego klucza

Aby zmienić klucz używany do szyfrowania w usłudze Data Factory, należy ręcznie zaktualizować ustawienia w usłudze Data Factory. Wykonaj podobne kroki, jak opisano w sekcji Interfejs użytkownika usługi Data Factory, w tym:

  1. Lokalizowanie identyfikatora URI nowego klucza za pośrednictwem portalu usługi Azure Key Vault

  2. Przejdź do ustawienia Klucza zarządzanego przez klienta

  3. Zastąp i wklej identyfikator URI dla nowego klucza

  4. Kliknij pozycję Zapisz , a usługa Data Factory będzie teraz szyfrować przy użyciu nowego klucza.

Wyłączanie kluczy zarządzanych przez klienta

Po włączeniu funkcji klucza zarządzanego przez klienta nie można usunąć dodatkowego kroku zabezpieczeń. Zawsze oczekujemy, że klucz dostarczony przez klienta będzie szyfrować fabrykę i dane.

Klucz zarządzany przez klienta oraz ciągła integracja i ciągłe wdrażanie

Domyślnie konfiguracja klucza zarządzanego przez klienta nie jest uwzględniana w szablonie usługi Azure Resource Manager (ARM) fabryki. Aby uwzględnić ustawienia szyfrowania kluczy zarządzanych przez klienta w szablonie usługi ARM na potrzeby ciągłej integracji (CI/CD):

  1. Upewnij się, że fabryka jest w trybie Git
  2. Przejdź do portalu zarządzania — sekcja klucza zarządzanego przez klienta
  3. Zaznacz opcję Uwzględnij w szablonie usługi ARM

Screenshot of including customer managed key setting in ARM template.

Następujące ustawienia zostaną dodane w szablonie usługi ARM. Te właściwości można sparametryzować w potokach ciągłej integracji i dostarczania, edytując konfigurację parametrów usługi Azure Resource Manager

Screenshot of including customer managed key setting in Azure Resource Manager template.

Uwaga

Dodanie ustawienia szyfrowania do szablonów usługi ARM powoduje dodanie ustawienia na poziomie fabryki, które spowoduje zastąpienie innych ustawień na poziomie fabryki, takich jak konfiguracje usługi Git, w innych środowiskach. Jeśli te ustawienia są włączone w środowisku z podwyższonym poziomem uprawnień, takim jak UAT lub PROD, zapoznaj się z artykułem Globalne parametry w ciągłej integracji/ciągłego wdrażania.

Zapoznaj się z samouczkami, aby dowiedzieć się więcej o korzystaniu z usługi Data Factory w dalszych scenariuszach.