Udostępnij przez


Pełne tworzenie i przywracanie kopii zapasowej oraz selektywne przywracanie kluczy

Uwaga / Notatka

Ta funkcja jest dostępna tylko dla typu zasobu zarządzanego HSM.

Zarządzany moduł HSM obsługuje tworzenie pełnej kopii zapasowej całej zawartości modułu HSM, w tym wszystkich kluczy, wersji, atrybutów, tagów i przypisań ról. Kopia zapasowa jest szyfrowana przy użyciu kluczy kryptograficznych skojarzonych z domeną zabezpieczeń modułu HSM.

Kopia zapasowa to operacja płaszczyzny danych. Obiekt wywołujący inicjujący operację tworzenia kopii zapasowej musi mieć uprawnienia do wykonywania operacji dataAction Microsoft.KeyVault/managedHsm/backup/start/action.

Tylko następujące wbudowane role mają uprawnienia do wykonywania pełnej kopii zapasowej:

  • Administrator zarządzanego modułu HSM
  • Zarządzana kopia zapasowa modułu HSM

Istnieją dwa sposoby wykonywania pełnej kopii zapasowej/przywracania:

  1. Przypisywanie zarządzanej tożsamości przypisanej do użytkownika (UAMI) do zarządzanej usługi HSM. Możesz utworzyć kopię zapasową i przywrócić swój MHSM, używając przypisanej przez użytkownika tożsamości zarządzanej. Jest to możliwe niezależnie od tego, czy konto magazynowe ma włączony dostęp do sieci publicznej, czy prywatnej. Jeśli konto magazynu znajduje się za prywatnym punktem końcowym, metoda UAMI współpracuje z pominięciem usług zaufanych, aby umożliwić tworzenie kopii zapasowych i przywracanie.
  2. Używanie tokenu SAS kontenera magazynu z uprawnieniami crdw. Kopiowanie zapasowe i przywracanie przy użyciu tokenu SAS kontenera pamięci wymaga posiadania włączonego dostępu do sieci publicznej.

Aby wykonać pełną kopię zapasową, należy podać następujące informacje:

  • Nazwa lub adres URL modułu HSM
  • Nazwa konta magazynu
  • Kontener pamięci masowej Blob w koncie Storage
  • Tożsamość zarządzana przypisana przez użytkownika lub token SAS kontenera magazynowego z uprawnieniami crdw

Azure Cloud Shell

Na platformie Azure hostowane jest interaktywne środowisko wiersza poleceń Azure Cloud Shell, z którego można korzystać przez przeglądarkę. Do pracy z usługami platformy Azure można używać programu Bash lub PowerShell w środowisku Cloud Shell. Aby uruchomić kod w tym artykule, możesz użyć wstępnie zainstalowanych poleceń usługi Cloud Shell bez konieczności instalowania niczego w środowisku lokalnym.

Aby uruchomić środowisko Azure Cloud Shell:

Option Przykład/link
Wybierz pozycję Wypróbuj w prawym górnym rogu bloku kodu lub polecenia. Wybranie pozycji Wypróbuj nie powoduje automatycznego skopiowania kodu lub polecenia do usługi Cloud Shell. Zrzut ekranu przedstawiający przykład narzędzia Try It dla usługi Azure Cloud Shell.
Przejdź do witryny https://shell.azure.com lub wybierz przycisk Uruchom Cloud Shell, aby otworzyć środowisko Cloud Shell w przeglądarce. Przycisk uruchamiania usługi Azure Cloud Shell.
Wybierz przycisk Cloud Shell na pasku menu w prawym górnym rogu witryny Azure Portal. Zrzut ekranu przedstawiający przycisk usługi Cloud Shell w witrynie Azure Portal

Aby użyć usługi Azure Cloud Shell:

  1. Uruchom usługę Cloud Shell.

  2. Wybierz przycisk Kopiuj w bloku kodu (lub bloku poleceń), aby skopiować kod lub polecenie.

  3. Wklej kod lub polecenie do sesji usługi Cloud Shell, wybierając Ctrl+Shift+ w systemach Windows i Linux lub wybierając pozycję Cmd++V w systemie macOS.

  4. Wybierz Enter, aby uruchomić kod lub polecenie.

Wymagania wstępne dotyczące tworzenia kopii zapasowej i przywracania przy użyciu tożsamości zarządzanej przypisanej przez użytkownika:

  1. Upewnij się, że masz interfejs wiersza polecenia platformy Azure w wersji 2.56.0 lub nowszej. Uruchom az --version, aby znaleźć wersję. Jeśli musisz zainstalować lub uaktualnić, zobacz Instalowanie interfejsu wiersza polecenia platformy Azure.
  2. Utwórz tożsamość zarządzaną przypisaną przez użytkownika.
  3. Utwórz konto magazynu (lub użyj istniejącego konta magazynu). Konto magazynu nie może mieć zastosowanej polityki niezmienności.
  4. Jeśli dostęp do sieci publicznej jest wyłączony na koncie magazynu, włącz obejście dla zaufanych usług na koncie magazynu na karcie "Sieci" w obszarze "Wyjątki".
  5. Przypisz rolę "Współautor danych blob" do przypisanej użytkownikowi tożsamości zarządzanej utworzonej w kroku 2, na karcie "Kontrola dostępu" w portalu, wybierając opcję "Dodaj przypisanie roli". Następnie wybierz pozycję "Tożsamość zarządzana" i wybierz tożsamość zarządzaną utworzoną w kroku 2 —> Przeglądanie i przypisywanie
  6. Utwórz zarządzany moduł bezpieczeństwa sprzętowego (HSM) i skojarz tożsamość zarządzaną:
    az keyvault create --hsm-name mhsmdemo2 –l mhsmlocation -- retention-days 7 --administrators "initialadmin" --mi-user-assigned "/subscriptions/subid/resourcegroups/mhsmrgname/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userassignedidentitynamefromstep2" 
    

Jeśli masz istniejący zarządzany moduł HSM, skojarz tożsamość zarządzaną, aktualizując narzędzie MHSM za pomocą poniższego polecenia.

 az keyvault update-hsm --hsm-name mhsmdemo2 --mi-user-assigned "/subscriptions/subid/resourcegroups/mhsmrgname/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userassignedidentitynamefromstep2" 

Pełna kopia zapasowa

Kopia zapasowa jest długotrwałą operacją, ale natychmiast zwraca identyfikator zadania. Stan procesu tworzenia kopii zapasowej można sprawdzić przy użyciu tego identyfikatora zadania. Proces tworzenia kopii zapasowej tworzy folder wewnątrz wyznaczonego kontenera z następującym wzorcem mhsm-{HSM_NAME}-{YYYY}{MM}{DD}{HH}{mm}{SS} nazewnictwa, gdzie HSM_NAME jest nazwą zarządzanego modułu HSM, którego kopia zapasowa jest tworzona, a RRRR, MM (miesiąc), DD, HH, mm (minuty), SS to rok, miesiąc, dzień, godzina, minuty i sekundy daty/godziny w formacie UTC po odebraniu polecenia kopii zapasowej.

Chociaż tworzenie kopii zapasowej jest w toku, moduł HSM może nie działać w pełnej przepływności, ponieważ niektóre partycje HSM są zajęte wykonywaniem operacji tworzenia kopii zapasowej.

Uwaga / Notatka

Kopie zapasowe na kontach magazynu z zastosowanymi zasadami niezmienności nie są obsługiwane.

Tworzenie kopii zapasowej modułu HSM przy użyciu tożsamości zarządzanej przypisanej przez użytkownika

az keyvault backup start --use-managed-identity true --hsm-name mhsmdemo2 --storage-account-name mhsmdemobackup --blob-container-name mhsmdemobackupcontainer

Tworzenie kopii zapasowej modułu HSM przy użyciu tokenu SAS

# time for 500 minutes later for SAS token expiry

end=$(date -u -d "500 minutes" '+%Y-%m-%dT%H:%MZ')

# Get storage account key

skey=$(az storage account keys list --query '[0].value' -o tsv --account-name mhsmdemobackup --subscription {subscription-id})

# Create a container

az storage container create --account-name  mhsmdemobackup --name mhsmdemobackupcontainer  --account-key $skey

# Generate a container sas token

sas=$(az storage container generate-sas -n mhsmdemobackupcontainer --account-name mhsmdemobackup --permissions crdw --expiry $end --account-key $skey -o tsv --subscription {subscription-id})

# Backup HSM

az keyvault backup start --hsm-name mhsmdemo2 --storage-account-name mhsmdemobackup --blob-container-name mhsmdemobackupcontainer --storage-container-SAS-token $sas --subscription {subscription-id}

Pełne przywrócenie

Pełne przywracanie umożliwia całkowite przywrócenie zawartości modułu HSM przy użyciu poprzedniej kopii zapasowej, w tym wszystkich kluczy, wersji, atrybutów, tagów i przypisań ról. Wszystkie elementy przechowywane obecnie w module HSM są wyczyszczone i są przywracane do tego samego stanu, w których znajdowała się podczas tworzenia źródłowej kopii zapasowej.

Ważne

Pełne przywracanie to destrukcyjna i zakłócająca operacja. W związku z tym należy wykonać pełną kopię zapasową przywracanego modułu HSM co najmniej 30 minut przed wykonaniem operacji restore.

Przywracanie danych to operacja w warstwie danych. Obiekt wywołujący rozpoczynający operację przywracania musi mieć uprawnienia do wykonywania operacji dataAction Microsoft.KeyVault/managedHsm/restore/start/action. Źródłowy moduł HSM, w którym utworzono kopię zapasową, oraz docelowy moduł HSM, w którym będzie wykonywane przywracanie , musi mieć tę samą domenę zabezpieczeń. Zobacz więcej o domenie zabezpieczeń zarządzanego HSM.

Istnieją dwa sposoby wykonywania pełnego przywrócenia. Aby wykonać pełne przywracanie, należy podać następujące informacje:

  • Nazwa lub adres URL modułu HSM
  • Nazwa konta magazynu
  • Kontener blob konta magazynowego
  • Tożsamość zarządzana przypisana przez użytkownika lub token SAS kontenera magazynowego z odpowiednimi uprawnieniami rl
  • Nazwa folderu kontenera magazynu, w którym jest przechowywana kopia zapasowa źródła

Przywracanie jest długotrwałą operacją, ale natychmiast zwraca ID zadania. Stan procesu przywracania można sprawdzić przy użyciu tego identyfikatora zadania. Gdy proces przywracania jest w toku, moduł HSM przechodzi w tryb przywracania, a wszystkie polecenia płaszczyzny danych (z wyjątkiem sprawdzenia stanu przywracania) są wyłączone.

Przywracanie modułu HSM przy użyciu tożsamości zarządzanej przypisanej przez użytkownika

az keyvault restore start --hsm-name mhsmdemo2 --storage-account-name mhsmdemobackup --blob-container-name mhsmdemobackupcontainer --backup-folder mhsm-backup-foldername --use-managed-identity true

Przywracanie modułu HSM przy użyciu tokenu SAS

# time for 500 minutes later for SAS token expiry

end=$(date -u -d "500 minutes" '+%Y-%m-%dT%H:%MZ')

# Get storage account key

skey=$(az storage account keys list --query '[0].value' -o tsv --account-name mhsmdemobackup --subscription {subscription-id})

# Generate a container sas token

sas=$(az storage container generate-sas -n mhsmdemobackupcontainer --account-name mhsmdemobackup --permissions rl --expiry $end --account-key $skey -o tsv --subscription {subscription-id})

# Restore HSM

az keyvault restore start --hsm-name mhsmdemo2 --storage-account-name mhsmdemobackup --blob-container-name mhsmdemobackupcontainer --storage-container-SAS-token $sas --backup-folder mhsm-mhsmdemo-2020083120161860

Selektywne przywracanie klucza

Selektywne przywracanie klucza umożliwia przywrócenie jednego pojedynczego klucza ze wszystkimi jego wersjami klucza z poprzedniej kopii zapasowej do modułu HSM. Aby przywracanie klucza selektywnego działało, należy usunąć klucz. Jeśli próbujesz odzyskać klucz usunięty nietrwale, użyj funkcji odzyskiwania klucza. Dowiedz się więcej na temat odzyskiwania klucza.

Selektywne przywracanie klucza przy użyciu tożsamości zarządzanej przypisanej przez użytkownika

az keyvault restore start --hsm-name mhsmdemo2 --storage-account-name mhsmdemobackup --blob-container-name mhsmdemobackupcontainer --backup-folder mhsm-backup-foldername --use-managed-identity true --key-name rsa-key2

Selektywne przywracanie klucza przy użyciu tokenu SAS

az keyvault restore start --hsm-name mhsmdemo2 --storage-account-name mhsmdemobackup --blob-container-name mhsmdemobackupcontainer --storage-container-SAS-token $sas --backup-folder mhsm-mhsmdemo-2020083120161860 -–key-name rsa-key2

Dalsze kroki