Przenoszenie usługi Azure Key Vault do innego regionu

Usługa Azure Key Vault nie obsługuje relokacji magazynu kluczy do innego regionu.

Zamiast relokacji należy wykonać następujące kroki:

  • Utwórz nowy magazyn kluczy z przeniesieniem skojarzonych usług platformy Azure.
  • Wygeneruj ponownie wszystkie wymagane klucze, wpisy tajne lub certyfikaty. W niektórych przypadkach może być konieczne przeniesienie wpisów tajnych lub certyfikatów z istniejącego magazynu kluczy do przeniesionego magazynu kluczy.

Diagram przedstawiający wzorzec relokacji usługi Azure Key Vault

Wymagania wstępne

  • Sprawdź, czy subskrypcja platformy Azure umożliwia tworzenie magazynów kluczy w regionie docelowym.

  • Utwórz mapę zależności ze wszystkimi usługami platformy Azure używanymi przez usługę Key Vault. W przypadku usług, które znajdują się w zakresie relokacji, należy wybrać odpowiednią strategię relokacji.

  • W zależności od projektu usługi Key Vault może być konieczne wdrożenie i skonfigurowanie sieci wirtualnej w regionie docelowym.

  • Dokumentowanie i planowanie ponownego konfigurowania w usłudze Key Vault w regionie docelowym:

    • Zasady dostępu i ustawienia konfiguracji sieci.
    • Usuwanie nietrwałe i ochrona przed przeczyszczaniem.
    • Ustawienia autorytacji.

Przestój

Aby zrozumieć możliwe przestoje, zobacz Cloud Adoption Framework for Azure: Select a relocation method (Przewodnik Cloud Adoption Framework dla platformy Azure: wybieranie metody relokacji).

Zagadnienia dotyczące punktów końcowych usługi

Punkty końcowe usługi sieci wirtualnej dla usługi Azure Key Vault ograniczają dostęp do określonej sieci wirtualnej. Punkty końcowe mogą również ograniczyć dostęp do listy zakresów adresów IPv4 (protokół internetowy w wersji 4). Każdy użytkownik nawiązujący połączenie z usługą Key Vault spoza tych źródeł nie ma dostępu. Jeśli punkty końcowe usługi zostały skonfigurowane w regionie źródłowym dla zasobu usługi Key Vault, należy to zrobić w tym samym miejscu docelowym.

Aby pomyślnie odtworzyć usługę Key Vault w regionie docelowym, należy wcześniej utworzyć sieć wirtualną i podsieć. W przypadku przenoszenia tych dwóch zasobów za pomocą narzędzia Azure Resource Mover punkty końcowe usługi nie będą konfigurowane automatycznie. W związku z tym należy je skonfigurować ręcznie, co można zrobić za pośrednictwem witryny Azure Portal, interfejsu wiersza polecenia platformy Azure lub programu Azure PowerShell.

Zagadnienia dotyczące prywatnego punktu końcowego

Usługa Azure Private Link zapewnia prywatną łączność z sieci wirtualnej do platformy Azure jako usługi (PaaS), należących do klienta lub usług partnerskich firmy Microsoft. Usługa Private Link upraszcza architekturę sieci i zabezpiecza połączenie między punktami końcowymi na platformie Azure, eliminując narażenie danych na publiczny Internet.

W celu pomyślnego odtworzenia usługi Key Vault w regionie docelowym należy utworzyć sieć wirtualną i podsieć przed rozpoczęciem rzeczywistej rekreacji.

Zagadnienia dotyczące integracji z usługą DNS prywatnego punktu końcowego platformy Azure

Ważne jest, aby poprawnie skonfigurować ustawienia DNS, aby rozpoznać prywatny adres IP punktu końcowego do w pełni kwalifikowanej nazwy domeny (FQDN) parametry połączenia.

Istniejące usługi platformy Microsoft Azure mogą już mieć konfigurację DNS dla publicznego punktu końcowego. Ta konfiguracja musi zostać zastąpiona, aby nawiązać połączenie przy użyciu prywatnego punktu końcowego.

Interfejs sieciowy skojarzony z prywatnym punktem końcowym zawiera informacje dotyczące konfigurowania systemu DNS. Informacje o interfejsie sieciowym obejmują nazwę FQDN i prywatne adresy IP dla zasobu łącza prywatnego.

Aby skonfigurować ustawienia DNS dla prywatnych punktów końcowych, możesz skorzystać z następujących opcji:

  • Użyj pliku hosta (zalecane tylko w przypadku testowania). Możesz użyć pliku hosta na maszynie wirtualnej, aby zastąpić serwer DNS.
  • Użyj prywatnej strefy DNS. Za pomocą prywatnych stref DNS można przesłonić rozpoznawanie nazw DNS dla prywatnego punktu końcowego. Prywatną strefę DNS można połączyć z siecią wirtualną w celu rozpoznawania konkretnych domen.
  • Użyj usługi przekazywania DNS (opcjonalnie). Możesz użyć usługi przekazywania DNS, aby zastąpić rozpoznawanie nazw DNS dla zasobu łącza prywatnego. Utwórz regułę przekazywania DNS, aby używać prywatnej strefy DNS na serwerze DNS hostowanym w sieci wirtualnej.

Przygotowywanie

Aby wyeksportować szablon przy użyciu witryny Azure Portal:

  1. Zaloguj się w witrynie Azure Portal.

  2. Wybierz pozycję Wszystkie zasoby , a następnie wybierz magazyn kluczy.

  3. Wybierz pozycję >Szablon eksportu usługi Automation>.

  4. Wybierz pozycję Pobierz w bloku Eksportuj szablon .

  5. Znajdź plik .zip pobrany z portalu i rozpakuj ten plik do wybranego folderu.

    Ten plik zip zawiera pliki .json, które składają się na szablon i skrypty do wdrożenia szablonu.

Należy pamiętać o następujących pojęciach:

  • Nazwy magazynów kluczy są globalnie unikatowe. Nie można ponownie użyć nazwy magazynu.
  • Należy ponownie skonfigurować zasady dostępu i ustawienia konfiguracji sieci w nowym magazynie kluczy.
  • Należy ponownie skonfigurować ochronę usuwania nietrwałego i przeczyszczania w nowym magazynie kluczy.
  • Operacja tworzenia kopii zapasowej i przywracania nie zachowuje ustawień autorotacji. Może być konieczne ponowne skonfigurowanie ustawień.

Modyfikowanie szablonu

Zmodyfikuj szablon, zmieniając nazwę i region magazynu kluczy.

Aby wdrożyć szablon przy użyciu witryny Azure Portal:

  1. W witrynie Azure Portal wybierz polecenie Utwórz zasób.

  2. W obszarze Przeszukaj witrynę Marketplace wpisz wdrożenie szablonu, a następnie naciśnij klawisz ENTER.

  3. Wybierz pozycję Wdrożenie szablonu.

  4. Wybierz pozycję Utwórz.

  5. Wybierz pozycję Utwórz własny szablon w edytorze.

  6. Wybierz pozycję Załaduj plik, a następnie postępuj zgodnie z instrukcjami, aby załadować plik template.json pobrany w ostatniej sekcji.

  7. W pliku template.json nazwij magazyn kluczy, ustawiając domyślną wartość nazwy magazynu kluczy. W tym przykładzie ustawiono wartość domyślną nazwy magazynu kluczy na mytargetaccountwartość .

    "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {
        "vaults_name": {
            "defaultValue": "key-vault-name",
            "type": "String"
        }
    },
    
  8. Edytuj właściwość location w pliku template.json do regionu docelowego. W tym przykładzie ustawiono region docelowy na centraluswartość .

    "resources": [
        {
            "type": "Microsoft.KeyVault/vaults",
            "apiVersion": "2023-07-01",
            "name": "[parameters('vaults_name')]",
            "location": "centralus",
            ...
        },
        ...
    ]
    

    Aby uzyskać kody lokalizacji regionów, zobacz Lokalizacje platformy Azure. Kod regionu to nazwa regionu bez spacji Środkowe stany USA = .

  9. Usuń zasoby typu prywatny punkt końcowy w szablonie.

    {
    "type": "Microsoft.KeyVault/vaults/privateEndpointConnections",
    ...
    }
    
  10. W przypadku skonfigurowania punktu końcowego usługi w magazynie kluczy w sekcji networkAcl w obszarze virtualNetworkRules dodaj regułę dla podsieci docelowej. Upewnij się, że flaga ignoreMissingVnetServiceEndpoint ma wartość Fałsz, aby usługa IaC nie mogła wdrożyć usługi Key Vault w przypadku, gdy punkt końcowy usługi nie jest skonfigurowany w regionie docelowym.

    parameter.json

    {
      "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#",
      "contentVersion": "1.0.0.0",
      "parameters": {
        "target_vnet_externalid": {
          "value": "virtualnetwork-externalid"
        },
        "target_subnet_name": {
          "value": "subnet-name"
        }
      }
    }
    

    _template.json

        "networkAcls": {
            "bypass": "AzureServices",
            "defaultAction": "Deny",
            "ipRules": [],
            "virtualNetworkRules": [
                {
                    "id": "[concat(parameters('target_vnet_externalid'), concat('/subnets/', parameters('target_subnet_name')]",
                    "ignoreMissingVnetServiceEndpoint": false
                }
            ]
        }
    

Wdróż ponownie

Wdróż szablon, aby utworzyć nowy magazyn kluczy w regionie docelowym.

  1. Zapisz plik template.json.

  2. Wprowadź lub wybierz wartości właściwości:

    • Subskrypcja: wybierz subskrypcję platformy Azure.

    • Grupa zasobów: wybierz pozycję Utwórz nową i nadaj nazwę grupie zasobów.

    • Lokalizacja: wybierz lokalizację platformy Azure.

  3. Wybierz pozycję Zgadzam się na powyższe warunki i postanowienia, a następnie wybierz pozycję Wybierz zakup.

  4. Zasady dostępu i ustawienia konfiguracji sieci (prywatne punkty końcowe) muszą zostać ponownie skonfigurowane w nowym magazynie kluczy. W nowym magazynie kluczy i ustawieniach autorotacji należy ponownie skonfigurować ochronę usuwania nietrwałego i przeczyszczania.

Napiwek

Jeśli zostanie wyświetlony błąd wskazujący, że określony kod XML nie jest prawidłowy syntaktycznie, porównaj kod JSON w szablonie ze schematami opisanymi w dokumentacji usługi Azure Resource Manager.

Ponowne wdrażanie przy użyciu migracji danych

Ważne

Jeśli planujesz przenieść usługę Key Vault między regionami, ale w tej samej lokalizacji geograficznej, zaleca się wykonanie kopii zapasowej i przywrócenie dla wpisów tajnych, kluczy i certyfikatów .

  1. Wykonaj kroki opisane w podejściu do ponownego wdrażania.
  2. W przypadku wpisów tajnych:
    1. Skopiuj i zapisz wartość wpisu tajnego w źródłowym magazynie kluczy.
    2. Utwórz ponownie wpis tajny w docelowym magazynie kluczy i ustaw wartość na zapisany wpis tajny.
  3. W przypadku certyfikatów:
    1. Wyeksportuj certyfikat do pliku PFX.
    2. Zaimportuj plik PFX do docelowego magazynu kluczy. Jeśli nie możesz wyeksportować klucza prywatnego (exportable nie ustawiono) musisz wygenerować nowy certyfikat i zaimportować go do docelowego magazynu kluczy.
  4. Po przeniesieniu skojarzonej usługi platformy Azure klucze są generowane ponownie.
  5. Upewnij się, że klucze zostały wygenerowane dla skojarzonej usługi.

Weryfikacja

Przed usunięciem starego magazynu kluczy sprawdź, czy nowy magazyn zawiera wszystkie wymagane klucze, wpisy tajne i certyfikaty po przeniesieniu skojarzonych usług platformy Azure.