Udostępnij za pośrednictwem


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 nieaktywne, w tym definicje jednostek i wszelkie dane buforowane w trakcie trwających 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 systemu 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. Kluczowy magazyn i usługa Data Factory muszą znajdować się w tej samej dzierżawie Microsoft Entra 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 przedstawiający sposób działania kluczy zarządzanych przez klienta w usłudze 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 odbywa się podczas tworzenia fabryki w portalu Azure, a drugi po jej utworzeniu w interfejsie użytkownika Data Factory.

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

Włącz miękkie usuwanie i nie usuwaj na stałe w usłudze Azure Key Vault

Korzystanie z kluczy zarządzanych przez klienta w usłudze Data Factory wymaga skonfigurowania dwóch właściwości w usłudze Key Vault: funkcji miękkiego usuwania i Nie czyść. 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 nowy Azure Key Vault przez portal Azure, Funkcja Soft Delete i Funkcja Do Not Purge mogą być włączone w następujący sposób:

Zrzut ekranu przedstawiający sposób włączania miękkiego usuwania i ochrony przed czyszczeniem podczas tworzenia Key Vault.

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

Zapewnij, aby usługi Azure Key Vault i Azure Data Factory znajdowały się w tej samej dzierżawie Microsoft Entra i w tym samym regionie. Możesz użyć zasad dostępu lub uprawnień kontroli dostępu:

  1. Zasady dostępu — w magazynie kluczy wybierz Zasady dostępu —>Dodaj zasady dostępu —> wyszukaj tożsamość zarządzaną dla Azure Data Factory i przyznaj uprawnienia Pobierz, Odpakuj klucz oraz Zaszyfruj klucz w rozwijanym menu uprawnień do tajemnic.

  2. Kontrola dostępu — tożsamość zarządzana będzie potrzebować dwóch ról w kontroli dostępu: Użytkownik szyfrowania usługi Key Vault Crypto Service oraz Użytkownik tajemnic Key Vault. W skarbcu kluczy wybierz pozycję Kontrola dostępu (IAM) ->+ Dodaj ->Dodaj przypisanie roli. Wybierz jedną z ról, a następnie wybierz pozycję Dalej. W obszarze Członkowie wybierz pozycję Tożsamość zarządzana , a następnie wybierz członków i wyszukaj tożsamość zarządzaną usługi Azure Data Factory. Następnie wybierz pozycję Przejrzyj i przypisz. Powtórz dla drugiej roli.

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.

Zrzut ekranu przedstawiający sposób generowania klucza zarządzanego przez klienta.

Włączanie kluczy zarządzanych przez klienta

Po utworzeniu fabryki w interfejsie użytkownika usługi Data Factory

W tej sekcji przedstawiono proces dodawania szyfrowania za pomocą 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 do fabryki, która nie jest pusta, wywoła błąd.

  3. Aby zlokalizować identyfikator URI klucza w portalu Azure, przejdź do usługi Azure Key Vault i wybierz ustawienia 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óre zawiera URI Zrzut ekranu przedstawiający pobieranie identyfikatora URI z usługi 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. Wybierz ikonę Klucz zarządzany przez klientaZrzut ekranu przedstawiający sposób włączania klucza zarządzanego przez klienta w interfejsie użytkownika usługi Data Factory.

  7. Wprowadź identyfikator URI klucza zarządzanego przez klienta, który wcześniej skopiowałeś.

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

Podczas tworzenia fabryki w Azure Portal

W tej sekcji opisano kroki procesu dodawania szyfrowania kluczy zarządzanych przez klienta w portalu Azure 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ć zarządzaną tożsamość użytkownika (UA-MI) do fabryki danych. Przyjmiemy role z UA-MI i uwierzytelnimy 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 do pobierania, rozpakowania klucza i zawijania klucza dla Key Vault.

  2. W obszarze Karta Zaawansowane zaznacz pole wyboru Włącz szyfrowanie przy użyciu klucza zarządzanego przez klientaZrzut ekranu przedstawiający kartę Zaawansowane środowisko tworzenia fabryki danych w witrynie Azure Portal.

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

    Napiwek

    Jeśli nie przekażesz wersji klucza w adresie URL po ostatnim "/", na przykład: https://mykeyvault.vault.azure.net/keys/cmk/, to wersja domyślnie ustawiona będzie na najnowszą, jeśli w przyszłości klucz zostanie zaktualizowany.

    Obecnie jest to obsługiwane tylko przy użyciu witryny Azure Portal.

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

  5. Kontynuuj uruchamianie fabryki.

Aktualizowanie wersji klucza

Podczas tworzenia nowej wersji klucza zaktualizuj Data Factory, aby korzystała z nowej wersji:

  1. Znajdź identyfikator URI nowej wersji klucza za pośrednictwem portalu usługi Azure Key Vault:

    1. Przejdź do usługi Azure Key Vault, i wybierz opcję Klucze.
    2. Wybierz żądany klucz, a następnie wybierz klucz, aby wyświetlić jego wersje.
    3. Wybierz kluczową wersję, aby wyświetlić ustawienia.
  2. Skopiuj wartość pola Identyfikator klucza, które zawiera URI.

  3. Uruchom portal usługi Azure Data Factory, a następnie na pasku nawigacyjnym po lewej stronie wybierz portal zarządzania fabryką danych.

  4. Wybierz ustawienie Klucz zarządzany przez klienta .

  5. Proszę wprowadzić wcześniej skopiowany identyfikator URI klucza zarządzanego przez klienta.

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

Użyj innego klucza

Aby zmienić klucz używany do szyfrowania w usłudze Data Factory, należy ręcznie zaktualizować ustawienia w usłudze Azure Data Factory:

  1. Znajdź identyfikator URI nowej wersji klucza za pośrednictwem portalu usługi Azure Key Vault:

    1. Przejdź do usługi Azure Key Vault, i wybierz opcję Klucze.
    2. Wybierz żądany klucz, a następnie wybierz klucz, aby wyświetlić jego wersje.
    3. Wybierz kluczową wersję, aby wyświetlić ustawienia.
  2. Skopiuj wartość pola Identyfikator klucza, które zawiera URI.

  3. Uruchom portal usługi Azure Data Factory, a następnie na pasku nawigacyjnym po lewej stronie wybierz portal zarządzania fabryką danych.

  4. Wybierz ustawienie Klucz zarządzany przez klienta .

  5. Wprowadź identyfikator URI dla pola, które skopiowałeś wcześniej.

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

Wyłączanie kluczy zarządzanych przez klienta

Po włączeniu funkcji wybierania 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 fabrycznym szablonie Azure Resource Manager (ARM). 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, aby otworzyć sekcję klucza zarządzanego przez klienta
  3. Zaznacz opcję Uwzględnij w szablonie ARM

Zrzut ekranu przedstawiający uwzględnienie ustawienia klucza zarządzanego przez klienta w szablonie ARM.

Następujące ustawienia zostaną dodane w szablonie 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

Zrzut ekranu przedstawiający dołączanie ustawienia klucza zarządzanego przez klienta w szablonie usługi Azure Resource Manager.

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 o podwyższonym poziomie dostępu, takim jak UAT lub PROD, zapoznaj się z Globalne parametry w CI/CD.

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