Udostępnij przez


Konfigurowanie kluczy zarządzanych przez klienta na potrzeby szyfrowania woluminów usługi Azure NetApp Files

Klucze zarządzane przez klienta na potrzeby szyfrowania woluminów usługi Azure NetApp Files umożliwiają używanie własnych kluczy zamiast klucza zarządzanego przez platformę podczas tworzenia nowego woluminu. Za pomocą kluczy zarządzanych przez klienta można w pełni zarządzać relacją między cyklem życia klucza, uprawnieniami do użycia klucza i operacjami inspekcji kluczy.

Na poniższym diagramie przedstawiono sposób działania kluczy zarządzanych przez klienta z usługą Azure NetApp Files:

Diagram koncepcyjny kluczy zarządzanych przez klienta.

  1. Usługa Azure NetApp Files udziela uprawnień do kluczy szyfrowania dla tożsamości zarządzanej. Tożsamość zarządzana może być tożsamością zarządzaną przypisaną przez użytkownika, którą sam tworzysz i zarządzasz, lub tożsamością zarządzaną przypisaną przez system, powiązaną z kontem NetApp.

  2. Szyfrowanie należy skonfigurować przy użyciu klucza zarządzanego przez klienta dla konta usługi NetApp.

  3. Tożsamość zarządzana, do której administrator usługi Azure Key Vault udzielił uprawnień w kroku 1, jest używana do uwierzytelniania dostępu do usługi Azure Key Vault za pomocą Microsoft Entra ID.

  4. Usługa Azure NetApp Files zawija klucz szyfrujący konta przy użyciu klucza zarządzanego przez klienta w Azure Key Vault.

    Klucze zarządzane przez klienta nie wpływają na wydajność usługi Azure NetApp Files. Jego jedyną różnicą od kluczy zarządzanych przez platformę jest sposób zarządzania kluczem.

  5. W przypadku operacji odczytu/zapisu usługa Azure NetApp Files wysyła żądania do usługi Azure Key Vault, aby odpakować klucz szyfrowania konta w celu wykonania operacji szyfrowania i odszyfrowywania.

Klucze zarządzane przez klienta między dzierżawami są dostępne we wszystkich obsługiwanych regionach usługi Azure NetApp Files.

Kwestie wymagające rozważenia

  • Aby utworzyć wolumin przy użyciu kluczy zarządzanych przez klienta, należy wybrać funkcje sieciowe Standard. Nie możesz używać woluminów z kluczami zarządzanymi przez klienta z woluminem skonfigurowanym przy użyciu podstawowych funkcji sieciowych. Postępuj zgodnie z instrukcjami w sekcji Ustawianie opcji Funkcje sieciowe na stronie tworzenia woluminu.
  • Aby zwiększyć bezpieczeństwo, możesz wybrać opcję Wyłącz dostęp publiczny w ustawieniach sieci magazynu kluczy. Podczas wybierania tej opcji należy również wybrać opcję Zezwalaj zaufanym usługom firmy Microsoft na obejście tej zapory, aby zezwolić usłudze Azure NetApp Files na dostęp do klucza szyfrowania.
  • Klucze zarządzane przez klienta obsługują automatyczne odnawianie certyfikatu tożsamości systemu zarządzanego (MSI). Jeśli certyfikat jest prawidłowy, nie musisz go aktualizować ręcznie.
  • Jeśli usługa Azure NetApp Files nie może utworzyć woluminu klucza zarządzanego przez klienta, zostaną wyświetlone komunikaty o błędach. Aby uzyskać więcej informacji, zobacz Komunikaty o błędach i rozwiązywanie problemów.
  • Nie wprowadzaj żadnych zmian w bazowym magazynie Azure Key Vault ani prywatnym punkcie końcowym platformy Azure po utworzeniu woluminu kluczy zarządzanych przez klienta. Wprowadzanie zmian może sprawić, że woluminy będą niedostępne. Jeśli musisz wprowadzić zmiany, zobacz Aktualizowanie prywatnego adresu IP punktu końcowego dla kluczy zarządzanych przez klienta.
  • Usługa Azure NetApp Files obsługuje możliwość przenoszenia istniejących woluminów z kluczy zarządzanych przez platformę (PMK) do kluczy zarządzanych przez klienta (CMK) bez migracji danych. Zapewnia to elastyczność cyklu życia klucza szyfrowania (odnawianie, rotacje) i dodatkowe zabezpieczenia dla wymagań branżowych podlegających regulacjom.
  • Jeśli usługa Azure Key Vault stanie się niedostępna, usługa Azure NetApp Files utraci dostęp do kluczy szyfrowania oraz możliwość odczytywania lub zapisywania danych w woluminach włączanych za pomocą kluczy zarządzanych przez klienta. W takiej sytuacji utwórz bilet pomocy technicznej, aby ręcznie przywrócić dostęp dla woluminów, których dotyczy problem.
  • Azure NetApp Files wspiera klucze zarządzane przez klienta na wolumenach źródła i replikacji danych z relacjami replikacji między regionami lub strefami.
  • Stosowanie grup zabezpieczeń sieciowych platformy Azure (NSG) w podsieci łącza prywatnego dla usługi Azure Key Vault jest wspierane w przypadku kluczy zarządzanych przez klienta w usłudze Azure NetApp Files. Sieciowe grupy zabezpieczeń nie mają wpływu na łączność z łączami prywatnymi, chyba że w podsieci włączono zasady sieciowe dla prywatnego punktu końcowego.
  • Zawijanie/odpakowywanie nie jest obsługiwane. Klucze zarządzane przez klienta używają szyfrowania/odszyfrowywania. Aby uzyskać więcej informacji, zobacz RsA algorithms (Algorytmy RSA).

Wymagania

Zanim utworzysz pierwszy wolumin z kluczem zarządzanym przez klienta, musisz skonfigurować:

  • Usługa Azure Key Vault zawierająca co najmniej jeden klucz.
    • Magazyn kluczy musi mieć włączone miękkie usuwanie i ochronę przed trwałym usunięciem.
    • Klucz musi być typu RSA.
  • Magazyn kluczy musi mieć prywatny punkt końcowy platformy Azure.
    • Prywatny punkt końcowy musi znajdować się w innej podsieci niż ten delegowany do usługi Azure NetApp Files. Podsieć musi znajdować się w tej samej sieci wirtualnej co ta, która została delegowana do usługi Azure NetApp.

Aby uzyskać więcej informacji na temat usługi Azure Key Vault i prywatnego punktu końcowego platformy Azure, zobacz:

Konfigurowanie konta usługi NetApp do używania kluczy zarządzanych przez klienta

  1. W witrynie Azure Portal i w obszarze Azure NetApp Files wybierz pozycję Szyfrowanie.

    Strona Szyfrowanie umożliwia zarządzanie ustawieniami szyfrowania dla konta usługi NetApp. Obejmuje ona opcję ustawienia konta usługi NetApp na użycie własnego klucza szyfrowania, który jest przechowywany w usłudze Azure Key Vault. To ustawienie zapewnia tożsamość przypisaną przez system do konta usługi NetApp i dodaje zasady dostępu dla tożsamości z wymaganymi uprawnieniami klucza.

    Zrzut ekranu przedstawiający menu szyfrowania.

  2. Po ustawieniu konta usługi NetApp do używania klucza zarządzanego przez klienta istnieją dwa sposoby określania identyfikatora URI klucza:

    • Opcja Wybierz z magazynu kluczy pozwala wybrać magazyn kluczy oraz klucz. Zrzut ekranu z interfejsu wyboru klucza.

    • Opcja Wprowadź identyfikator URI klucza umożliwia ręczne wprowadzenie identyfikatora URI klucza. Zrzut ekranu przedstawiający menu szyfrowania z polem identyfikatora URI klucza.

  3. Wybierz typ tożsamości, którego chcesz użyć do uwierzytelniania w usłudze Azure Key Vault. Jeśli usługa Azure Key Vault jest skonfigurowana do używania zasad dostępu magazynu jako modelu uprawnień, obie opcje są dostępne. W przeciwnym razie dostępna jest tylko opcja przypisana przez użytkownika.

    • Jeśli wybierzesz pozycję Przypisane przez system, wybierz przycisk Zapisz . Portal Azure automatycznie konfiguruje konto NetApp przez dodanie tożsamości przypisanej przez system do konta NetApp. Zasady dostępu są również tworzone w usłudze Azure Key Vault z uprawnieniami klucza: Pobierz, Szyfruj, Deszyfruj.

    Zrzut ekranu przedstawiający menu szyfrowania z opcjami przypisanymi przez system.

    • Jeśli wybierzesz opcję Przypisane przez użytkownika, musisz wybrać tożsamość. Wybierz pozycję Wybierz tożsamość , aby otworzyć okienko kontekstowe, w którym wybierzesz tożsamość zarządzaną przypisaną przez użytkownika.

    Zrzut ekranu przedstawiający podmenu przypisany przez użytkownika.

    Jeśli skonfigurowano usługę Azure Key Vault do korzystania z polityki dostępu do magazynu, portal Azure automatycznie konfiguruje konto NetApp w następujący sposób: wybrana tożsamość przypisana przez użytkownika zostanie dodana do konta NetApp. Zasady dostępu są tworzone w usłudze Azure Key Vault z uprawnieniami klucza Pobierz, Szyfruj, Odszyfruj.

    Jeśli skonfigurowałeś usługę Azure Key Vault do korzystania z kontroli dostępu opartej na rolach platformy Azure, to upewnij się, że wybrana tożsamość przypisana użytkownikowi ma przypisanie roli w magazynie kluczy z uprawnieniami do akcji:

  4. Wybierz pozycję Zapisz , a następnie obserwuj powiadomienie informujące o stanie operacji. Jeśli operacja nie powiedzie się, zostanie wyświetlony komunikat o błędzie. Aby uzyskać pomoc dotyczącą rozwiązywania błędu, zobacz komunikaty o błędach i rozwiązywanie problemów.

Korzystanie z kontroli dostępu opartej na rolach

Możesz użyć usługi Azure Key Vault skonfigurowanej do korzystania z kontroli dostępu opartej na rolach platformy Azure. Aby skonfigurować klucze zarządzane przez klienta za pośrednictwem witryny Azure Portal, musisz podać tożsamość przypisaną przez użytkownika.

  1. Na koncie platformy Azure przejdź do pozycji Magazyny kluczy , a następnie pozycję Zasady dostępu.

  2. Aby utworzyć zasady dostępu, w obszarze Model uprawnień wybierz pozycję Kontrola dostępu oparta na rolach na platformie Azure. Zrzut ekranu przedstawiający menu konfiguracji dostępu.

  3. Podczas tworzenia roli przypisanej przez użytkownika istnieją trzy uprawnienia wymagane dla kluczy zarządzanych przez klienta:

    1. Microsoft.KeyVault/vaults/keys/read
    2. Microsoft.KeyVault/vaults/keys/encrypt/action
    3. Microsoft.KeyVault/vaults/keys/decrypt/action

    Chociaż istnieją wstępnie zdefiniowane role, które obejmują te uprawnienia, te role przyznają więcej uprawnień niż są wymagane. Zaleca się utworzenie roli niestandardowej tylko z minimalnymi wymaganymi uprawnieniami. Aby uzyskać więcej informacji, zobacz Role niestandardowe platformy Azure.

    {
        "id": "/subscriptions/<subscription>/Microsoft.Authorization/roleDefinitions/<roleDefinitionsID>",
        "properties": {
            "roleName": "NetApp account",
            "description": "Has the necessary permissions for customer-managed key encryption: get key, encrypt and decrypt",
            "assignableScopes": [
                "/subscriptions/<subscriptionID>/resourceGroups/<resourceGroup>"
            ],
            "permissions": [
              {
                "actions": [],
                "notActions": [],
                "dataActions": [
                    "Microsoft.KeyVault/vaults/keys/read",
                    "Microsoft.KeyVault/vaults/keys/encrypt/action",
                    "Microsoft.KeyVault/vaults/keys/decrypt/action"
                ],
                "notDataActions": []
                }
            ]
          }
    }
    
  4. Po utworzeniu roli niestandardowej i udostępnieniu jej do użycia z sejfem na klucze, należy ją zastosować do tożsamości przypisanej przez użytkownika.

Zrzut ekranu przedstawiający przegląd kontroli dostępu opartej na rolach i menu przypisywania.

Tworzenie woluminu usługi Azure NetApp Files przy użyciu kluczy zarządzanych przez klienta

  1. W Azure NetApp Files wybierz Woluminy, a następnie + Dodaj wolumin.

  2. Postępuj zgodnie z instrukcjami w temacie Konfigurowanie funkcji sieciowych dla woluminu usługi Azure NetApp Files:

  3. W przypadku konta usługi NetApp skonfigurowanego do używania klucza zarządzanego przez klienta strona Tworzenie woluminu zawiera opcję Źródło klucza szyfrowania.

    Aby zaszyfrować wolumin przy użyciu klucza, wybierz pozycjęCustomer-Managed Klucz w menu rozwijanym Źródło klucza szyfrowania .

    Podczas tworzenia woluminu przy użyciu klucza zarządzanego przez klienta należy również wybrać opcję Standardowa dla opcji Funkcje sieciowe . Podstawowe funkcje sieciowe nie są obsługiwane.

    Należy również wybrać prywatny punkt końcowy dla magazynu kluczy. Menu rozwijane wyświetla prywatne punkty końcowe w wybranej sieci wirtualnej. Jeśli w wybranej sieci wirtualnej nie ma prywatnego punktu końcowego dla skarbca kluczy, lista rozwijana będzie pusta i nie będziesz mógł kontynuować. Jeśli wystąpi ten scenariusz, zobacz Prywatny punkt końcowy platformy Azure.

    Zrzut ekranu przedstawiający menu tworzenia woluminu.

  4. Kontynuuj tworzenie woluminu, aż do jego ukończenia. Zapoznaj się z:

Przenoszenie woluminu usługi Azure NetApp Files do kluczy zarządzanych przez klienta

Usługa Azure NetApp Files obsługuje możliwość przenoszenia istniejących woluminów przy użyciu kluczy zarządzanych przez platformę do kluczy zarządzanych przez klienta. Po zakończeniu migracji nie można przywrócić kluczy zarządzanych przez platformę.

Woluminy przejściowe

Uwaga

Podczas przenoszenia woluminów do używania kluczy zarządzanych przez klienta należy wykonać przejście dla każdej sieci wirtualnej, w której konto usługi Azure NetApp Files ma woluminy.

  1. Upewnij się, że skonfigurowano konto usługi Azure NetApp Files do używania kluczy zarządzanych przez klienta.
  2. W witrynie Azure Portal przejdź do pozycji Szyfrowanie.
  3. Wybierz kartę CMK Migration.
  4. Z rozwijanego menu wybierz sieć wirtualną i prywatny punkt końcowy magazynu kluczy, którego chcesz użyć.
  5. Platforma Azure generuje listę woluminów, które mają być szyfrowane przez klucz zarządzany przez klienta.
  6. Wybierz pozycję Potwierdź , aby zainicjować migrację.

Zmień klucze wszystkich woluminów na koncie NetApp

Jeśli konto usługi NetApp zostało już skonfigurowane dla kluczy zarządzanych przez klienta i ma co najmniej jeden wolumin zaszyfrowany przy użyciu kluczy zarządzanych przez klienta, możesz zmienić klucz używany do szyfrowania wszystkich woluminów w ramach konta usługi NetApp. Możesz wybrać dowolny klucz, który znajduje się w tym samym magazynie kluczy. Zmiana skarbców kluczy nie jest obsługiwana.

  1. W obszarze konta usługi NetApp przejdź do menu Szyfrowanie . W polu Bieżący klucz wejściowy wybierz link Zmień klucz . Zrzut ekranu przedstawiający klucz szyfrowania.

  2. W menu Zmień klucz wybierz jeden z dostępnych kluczy z menu rozwijanego. Wybrany klucz musi być inny niż bieżący klucz. Zrzut ekranu przedstawiający menu ponownego klucza.

  3. Wybierz przycisk OK , aby zapisać. Operacja ponownego klucza może potrwać kilka minut.

Przełącz z tożsamości przypisanej przez system na tożsamość przypisaną do użytkownika

Aby przełączyć się z tożsamości przypisanej przez system na tożsamość przypisaną przez użytkownika, musisz przyznać tożsamości docelowej dostęp do używanego magazynu kluczy z uprawnieniami odczytu/pobierania, szyfrowania i odszyfrowywania.

  1. Zaktualizuj konto usługi NetApp, wysyłając żądanie PATCH przy użyciu az rest polecenia :

    az rest -m PATCH -u <netapp-account-resource-id>?api-versions=2022-09-01 -b @path/to/payload.json
    

    Ładunek powinien używać następującej struktury:

    {
      "identity": {
        "type": "UserAssigned",
        "userAssignedIdentities": {
         "<identity-resource-id>": {}
        }
      },
      "properties": {
        "encryption": {
          "identity": {
            "userAssignedIdentity": "<identity-resource-id>"
          }
        }
      }
    }
    
  2. Upewnij się, że operacja została ukończona pomyślnie za pomocą polecenia az netappfiles account show. Dane wyjściowe zawierają następujące pola:

        "id": "/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.NetApp/netAppAccounts/account",
        "identity": {
            "principalId": null,
            "tenantId": null,
            "type": "UserAssigned",
            "userAssignedIdentities": {
                "/subscriptions/<subscription-id>/resourceGroups/<resource-group>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<identity>": {
                    "clientId": "<client-id>",
                    "principalId": "<principalId>",
                    "tenantId": <tenantId>"
                }
            }
        },
    

    Upewnij się, że:

    • encryption.identity.principalId pasuje do wartości w identity.userAssignedIdentities.principalId
    • encryption.identity.userAssignedIdentity pasuje do wartości w identity.userAssignedIdentities[]
    "encryption": {
        "identity": {
            "principalId": "<principal-id>",
            "userAssignedIdentity": "/subscriptions/<subscriptionId>/resourceGroups/<resource-group>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<identity>"
        },
        "KeySource": "Microsoft.KeyVault",
    },
    

Zaktualizuj prywatny punkt końcowy

Wprowadzanie zmian w prywatnym punkcie końcowym platformy Azure po utworzeniu woluminu klucza zarządzanego przez klienta może sprawić, że wolumin będzie niedostępny. Jeśli musisz wprowadzić zmiany, musisz utworzyć nowy punkt końcowy i zaktualizować wolumin, aby wskazywał nowy punkt końcowy.

  1. Utwórz nowy punkt końcowy między siecią wirtualną a usługą Azure Key Vault.
  2. Zaktualizuj wszystkie woluminy, które korzystają ze starego punktu końcowego, aby korzystały z nowego punktu końcowego.
    az netappfiles volume update --g $resource-group-name --account-name $netapp-account-name --pool-name $pool-name --name $volume-name --key-vault-private-endpoint-resource-id $newendpoint
    
  3. Usuń stary prywatny punkt końcowy.

Następne kroki