Verschieben eines Azure Key Vault in eine andere Region

Azure Key Vault unterstützt keine Schlüsseltresorverschiebung in eine andere Region.

Gehen Sie anstelle einer Verschiebung wie folgt vor:

  • Erstellen Sie einen neuen Schlüsseltresor mit der Verschiebung der zugehörigen Azure-Dienste.
  • Generieren Sie alle erforderlichen Schlüssel, Geheimschlüssel oder Zertifikate neu. In einigen Fällen müssen Sie möglicherweise die geheimen Schlüssel oder Zertifikate von Ihrem vorhandenen Schlüsseltresor in den verschobenen Schlüsseltresor übertragen.

Diagramm mit dem Azure Key Vault-Verschiebungsmuster

Voraussetzungen

  • Vergewissern Sie sich, dass Ihr Azure-Abonnement das Erstellen von Schlüsseltresoren in der Zielregion zulässt.

  • Erstellen Sie eine Abhängigkeitszuordnung mit allen Azure-Diensten, die vom Key Vault verwendet werden. Für die Dienstleistungen, die im Rahmen der Verschiebung vorliegen, müssen Sie die entsprechende Verlagerungsstrategie auswählen.

  • Je nach Key Vault-Design müssen Sie möglicherweise das Virtual Network in der Zielregion bereitstellen und konfigurieren.

  • Dokumentieren und planen Sie die Neukonfigurierung im Key Vault in der Zielregion:

    • Zugriffsrichtlinien und Netzwerkkonfigurationseinstellungen.
    • Vorläufiges Löschen und Löschschutz.
    • Einstellungen für Autorotation.

Ausfallzeit

Informationen zu den möglichen Ausfallzeiten finden Sie unter Cloud Adoption Framework für Azure: Auswählen einer Verlagerungsmethode.

Überlegungen zu Dienstendpunkten

Die VNET-Dienstendpunkte für Azure Key Vault beschränken den Zugriff auf angegebene virtuelle Netzwerke. Die Endpunkte können auch den Zugriff auf eine Liste von IPv4-Adressbereichen (Internet Protocol, Version 4) beschränken. Allen Benutzern, die außerhalb dieser Quellen eine Verbindung mit dem Key Vault herstellen, wird der Zugriff verweigert. Wenn Dienstendpunkte in der Quellregion für die Key Vault-Ressource konfiguriert wurden, muss das auch im Zielwert der Fall sein.

Für eine erfolgreiche Wiederherstellung des Key Vault in die Zielregion müssen vorher das VNet und das Subnetz erstellt werden. Wenn die Verschiebung dieser beiden Ressourcen mit dem Azure Resource Mover-Tool durchgeführt wird, werden die Dienstendpunkte nicht automatisch konfiguriert. Daher müssen sie manuell konfiguriert werden, was über das Azure-Portal, die Azure CLI oder über Azure PowerShell erfolgen kann.

Überlegungen zu privaten Endpunkten

Azure Private Link stellt eine private Verbindung zwischen einem virtuellen Netzwerk und Azure-PaaS-Diensten (Platform-as-a-Service), kundeneigenen Diensten oder Diensten von Microsoft-Partnern her. Private Link vereinfacht die Netzwerkarchitektur und schützt die Verbindung zwischen Endpunkten in Azure, indem die Offenlegung von Daten im öffentlichen Internet verhindert wird.

Für eine erfolgreiche Wiederherstellung des Key Vault in die Zielregion müssen vor der eigentlichen Verschiebung das VNet und das Subnetz erstellt werden.

Überlegungen zur DNS-Integration für private Azure-Endpunkte

Es ist wichtig, die DNS-Einstellungen ordnungsgemäß zu konfigurieren, um die IP-Adresse des privaten Endpunkts in den vollqualifizierten Domänennamen (FQDN) der Verbindungszeichenfolge aufzulösen.

Bestehende Microsoft Azure-Dienste verfügen möglicherweise bereits über eine DNS-Konfiguration für einen öffentlichen Endpunkt. Diese Konfiguration muss außer Kraft gesetzt werden, um eine Verbindung mithilfe Ihres privaten Endpunkts herzustellen.

Die Netzwerkschnittstelle, die dem privaten Endpunkt zugeordnet ist, enthält die Informationen zum Konfigurieren des DNS. Die Informationen zur Netzwerkschnittstelle umfassen den vollqualifizierten Domänennamen und private IP-Adressen für Ihre Private Link-Ressource.

Mit den folgenden Optionen können Sie Ihre DNS-Einstellungen für private Endpunkte konfigurieren:

  • Verwenden Sie die Hostdatei (wird nur für Tests empfohlen). Sie können die Hostdatei auf einem virtuellen Computer verwenden, um das DNS zu überschreiben.
  • Private DNS-Zone. Sie können private DNS-Zonen verwenden, um die DNS-Auflösung für einen privaten Endpunkt außer Kraft zu setzen. Eine private DNS-Zone kann mit Ihrem virtuellen Netzwerk verknüpft werden, um bestimmte Domänen aufzulösen.
  • Verwenden Sie Ihre DNS-Weiterleitung (optional). Sie können Ihre DNS-Weiterleitung verwenden, um die DNS-Auflösung für eine Private Link-Ressource außer Kraft zu setzen. Erstellen Sie eine DNS-Weiterleitungsregel, um eine private DNS-Zone auf Ihrem DNS-Server zu verwenden, der in einem virtuellen Netzwerk gehostet wird.

Vorbereiten

So exportieren Sie eine Vorlage mithilfe des Azure-Portals

  1. Melden Sie sich beim Azure-Portal an.

  2. Wählen Sie die Option Alle Ressourcen und dann Ihren Schlüsseltresor aus.

  3. Wählen Sie >Automation>Vorlage exportieren aus.

  4. Wählen Sie Herunterladen auf dem Blatt Vorlage exportieren aus.

  5. Suchen Sie die aus dem Portal heruntergeladene ZIP-Datei, und entpacken Sie sie in einen Ordner Ihrer Wahl.

    Diese ZIP-Datei enthält die JSON-Dateien, in denen die Vorlage und die Skripts zum Bereitstellen der Vorlage enthalten sind.

Denken Sie an Folgendes:

  • Schlüsseltresornamen sind global eindeutig. Sie können einen Tresornamen nicht wiederverwenden.
  • Sie müssen Ihre Zugriffsrichtlinien und Netzwerkkonfigurationseinstellungen in dem neuen Schlüsseltresor erneut konfigurieren.
  • Sie müssen vorläufiges Löschen und Bereinigungsschutz in dem neuen Schlüsseltresor erneut konfigurieren.
  • Der Sicherungs- und Wiederherstellungsvorgang erhält Ihre Einstellungen für die automatische Rotation nicht. Sie müssen die Einstellungen eventuell neu konfigurieren.

Ändern der Vorlage

Ändern Sie die Vorlage, indem Sie den Namen und die Region des Schlüsseltresors ändern.

So stellen Sie die Vorlage mithilfe des Azure-Portals bereit

  1. Klicken Sie im Azure-Portal auf Ressource erstellen.

  2. Geben Sie in Marketplace durchsuchen den Begriff Vorlagenbereitstellung ein, und drücken Sie dann die EINGABETASTE.

  3. Wählen Sie Vorlagenbereitstellung aus.

  4. Klicken Sie auf Erstellen.

  5. Wählen Sie Eigene Vorlage im Editor erstellen.

  6. Wählen Sie Datei laden aus, und befolgen Sie dann die Anweisungen zum Laden der Datei template.json, die Sie im vorherigen Abschnitt heruntergeladen haben.

  7. Benennen Sie in der Datei template.json den Schlüsseltresor, indem Sie den Standardwert des Schlüsseltresornamens festlegen. In diesem Beispiel wird der Standardwert des Schlüsseltresornamens auf mytargetaccount festgelegt.

    "$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. Bearbeiten Sie die location-Eigenschaft in der Datei template.json in der Zielregion. Dieses Beispiel legt den Zielbereich auf centralus fest.

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

    Informationen zum Abrufen von Regionsstandortcodes finden Sie unter Azure-Standorte. Der Code für eine Region ist der Regionsname ohne Leerzeichen, USA, Mitte = centralus.

  9. Entfernen Sie Ressourcen vom Typ „privater Endpunkt“ in der Vorlage.

    {
    "type": "Microsoft.KeyVault/vaults/privateEndpointConnections",
    ...
    }
    
  10. Falls Sie einen Dienstendpunkt in Ihrem Schlüsseltresor konfiguriert haben, fügen Sie im Abschnitt networkAcl unter virtualNetworkRules die Regel für das Zielsubnetz hinzu. Stellen Sie sicher, dass das Flag ignoreMissingVnetServiceEndpoint auf „False“ festgelegt ist, sodass der Schlüsseltresor nicht bereitgestellt werden kann, falls der Dienstendpunkt nicht in der Zielregion konfiguriert ist.

    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
                }
            ]
        }
    

Erneute Bereitstellung

Stellen Sie die Vorlage zum Erstellen eines neuen Schlüsseltresors in der Zielregion bereit.

  1. Speichern Sie die Datei template.json.

  2. Geben Sie die Eigenschaftswerte ein oder wählen Sie sie aus:

    • Abonnement: Wählen Sie ein Azure-Abonnement aus.

    • Ressourcengruppe: Wählen Sie Neu erstellen aus, und benennen Sie die Ressourcengruppe.

    • Standort: Wählen Sie einen Azure-Standort aus.

  3. Wählen Sie Ich stimme den oben genannten Geschäftsbedingungen zu und anschließend Kaufen aus.

  4. Zugriffsrichtlinien und Netzwerkkonfigurationseinstellungen (private Endpunktee) müssen in dem neuen Schlüsseltresor erneut konfiguriert werden. Vorläufiges Löschen und Löschschutz müssen im neuen Schlüsseltresor und in den Einstellungen für Autorotation neu konfiguriert werden.

Tipp

Wenn Sie eine Fehlermeldung erhalten, der zufolge der angegebene XML-Code eine ungültige Syntax aufweist, vergleichen Sie die JSON-Datei in Ihrer Vorlage mit den in der Azure Resource Manager-Dokumentation beschriebenen Schemas.

Erneute Bereitstellung mit Datenmigration

Wichtig

Wenn Sie beabsichtigen, einen Schlüsseltresor über Regionen hinweg, aber innerhalb derselben Geografie zu verschieben, empfiehlt es sich, eine Sicherung und Wiederherstellung für Geheimnisse, Schlüssel und Zertifikate durchzuführen.

  1. Führen Sie die im Ansatz für erneute Bereitstellung beschriebenen Schritte aus.
  2. Für Geheimnisse:
    1. Kopieren Sie den Geheimniswert, und speichern Sie ihn im Quellschlüsseltresor.
    2. Erstellen Sie den geheimen Schlüssel im Zielschlüsseltresor neu, und legen Sie den Wert auf das gespeicherte Geheimnis fest.
  3. Für Zertifikate:
    1. Exportieren Sie das Zertifikat in eine PFX-Datei.
    2. Importieren Sie die PFX-Datei in den Zielschlüsseltresor. Wenn Sie den privaten Schlüssel nicht exportieren können (exportable ist nicht festgelegt), müssen Sie ein neues Zertifikat generieren und in den Zielschlüsseltresor importieren.
  4. Mit der Verschiebung des zugehörigen Azure-Diensts werden die Schlüssel neu generiert.
  5. Vergewissern Sie sich, dass die Schlüssel für den zugehörigen Dienst generiert wurden.

Überprüfen

Überprüfen Sie vor dem Löschen Ihres alten Schlüsseltresors, ob der neue Tresor nach der Verschiebung der zugehörigen Azure-Dienste alle erforderlichen Schlüssel, Geheimnisse und Zertifikate enthält.