Vollständige Sicherung und Wiederherstellung und selektive Schlüsselwiederherstellung

Hinweis

Dieses Feature steht nur für den Ressourcentyp „Verwaltetes HSM“ zur Verfügung.

Verwaltete HSMs unterstützen das Erstellen einer vollständigen Sicherung des gesamten Inhalts des HSM – einschließlich aller Schlüssel, Versionen, Attribute, Tags und Rollenzuweisungen. Die Sicherung wird mit kryptografischen Schlüsseln verschlüsselt, die der Sicherheitsdomäne des HSM zugeordnet sind.

Sicherungsvorgänge werden auf der Datenebene durchgeführt. Der Aufrufer, der den Sicherungsvorgang initiiert, muss über die Berechtigung zum Ausführen von „dataAction“ (Microsoft.KeyVault/managedHsm/backup/start/action) verfügen.

Nur die folgenden integrierten Rollen sind zum Ausführen einer vollständigen Sicherung berechtigt:

  • Managed HSM Administrator (Administrator für verwaltete HSMs)
  • Managed HSM Backup (Sicherung verwalteter HSMs)

Es gibt zwei Möglichkeiten, eine vollständige Sicherung/Wiederherstellung auszuführen:

  1. Zuweisen einer benutzerseitig zugewiesenen verwalteten Identität (UAMI) zum verwalteten HSM-Dienst. Sie können Ihren MHSM mit einer benutzerseitig zugewiesenen verwalteten Identität sichern und wiederherstellen, unabhängig davon, ob für Ihr Speicherkonto der öffentliche oder der private Netzwerkzugriff aktiviert ist. Wenn sich das Speicherkonto hinter einem privaten Endpunkt befindet, wird die Sicherung und Wiederherstellung bei der UAMI-Methode durch Umgehung des vertrauenswürdigen Diensts ermöglicht.
  2. Verwenden des SAS-Token des Speichercontainers mit Berechtigungen vom Typ „crdw“. Das Sichern und Wiederherstellen mithilfe eines Speichercontainer-SAS-Tokens erfordert, dass bei Ihrem Speicherkonto der öffentliche Netzwerkzugriff aktiviert ist.

Sie müssen zum Ausführen einer vollständigen Wiederherstellung folgende Informationen angeben:

  • HSM-Name oder -URL
  • Speicherkontoname
  • Speicherkonto-Blobspeichercontainer
  • SAS-Token für benutzerseitig zugewiesene verwaltete Identität ODER Speichercontainer mit den Berechtigungen „crdw“

Azure Cloud Shell

Azure hostet Azure Cloud Shell, eine interaktive Shell-Umgebung, die Sie über Ihren Browser nutzen können. Sie können entweder Bash oder PowerShell mit Cloud Shell verwenden, um mit Azure-Diensten zu arbeiten. Sie können die vorinstallierten Befehle von Cloud Shell verwenden, um den Code in diesem Artikel auszuführen, ohne etwas in Ihrer lokalen Umgebung installieren zu müssen.

Starten von Azure Cloud Shell:

Option Beispiel/Link
Wählen Sie rechts oben in einem Code- oder Befehlsblock die Option Ausprobieren aus. Durch die Auswahl von Ausprobieren wird der Code oder Befehl nicht automatisch in Cloud Shell kopiert. Screenshot: Beispiel von „Jetzt testen“ für Azure Cloud Shell.
Rufen Sie https://shell.azure.com auf, oder klicken Sie auf die Schaltfläche Cloud Shell starten, um Cloud Shell im Browser zu öffnen. Schaltfläche zum Starten von Azure Cloud Shell.
Wählen Sie im Azure-Portal rechts oben im Menü die Schaltfläche Cloud Shell aus. Screenshot: Schaltfläche „Cloud Shell“ im Azure-Portal

So verwenden Sie Azure Cloud Shell:

  1. Starten Sie Cloud Shell.

  2. Wählen Sie die Schaltfläche Kopieren für einen Codeblock (oder Befehlsblock) aus, um den Code oder Befehl zu kopieren.

  3. Fügen Sie den Code oder Befehl mit STRG+UMSCHALT+V unter Windows und Linux oder CMD+UMSCHALT+V unter macOS in die Cloud Shell-Sitzung ein.

  4. Drücken Sie die EINGABETASTE, um den Code oder Befehl auszuführen.

Voraussetzungen für das Sichern und Wiederherstellen mithilfe einer benutzerseitig zugewiesenen verwalteten Identität:

  1. Version 2.56.0 oder höher der Azure CLI Führen Sie az --version aus, um die Version zu finden. Installations- und Upgradeinformationen finden Sie bei Bedarf unter Installieren von Azure CLI.
  2. Erstellen einer benutzerseitig zugewiesenen verwalteten Identität.
  3. Erstellen Sie ein Speicherkonto (oder verwenden Sie ein vorhandenes Speicherkonto).
  4. Wenn der öffentliche Netzwerkzugriff für Ihr Speicherkonto deaktiviert ist, aktivieren Sie auf der Registerkarte „Netzwerk“ unter „Ausnahmen“ die Umgehung vertrauenswürdiger Dienste für das Speicherkonto.
  5. Stellen Sie den Rollenzugriff von "Storage Blob Data Contributor" auf die in Schritt 2 erstellte verwaltete Identität des Benutzers bereit, indem Sie im Portal zur Registerkarte "Zugriffssteuerung" –> Rollenzuweisung hinzufügen wechseln. Wählen Sie dann „verwaltete Identität“ und dann die verwaltete Identität aus, die in Schritt 2 erstellt wurde –> Überprüfen + Zuweisen
  6. Erstellen Sie das verwaltete HSM und ordnen Sie die verwaltete Identität dem folgenden Befehl zu.
    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" 
    

Wenn Sie über ein vorhandenes verwaltetes HSM verfügen, ordnen Sie die verwaltete Identität zu, indem Sie den MHSM mit dem folgenden Befehl aktualisieren.

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

Vollständige Sicherung

Die Sicherung ist ein zeitintensiver Vorgang. Es wird jedoch sofort eine Auftrags-ID zurückgegeben. Mithilfe dieser Auftrags-ID können Sie den Status des Sicherungsprozesses überprüfen. Durch den Sicherungsprozess wird im angegebenen Container ein Ordner mit folgendem Namensmuster erstellt: mhsm-{HSM_NAME}-{YYYY}{MM}{DD}{HH}{mm}{SS} . Hierbei ist „HSM_NAME“ der Name des verwalteten HSM, das gesichert wird, und „YYYY“, „MM“, „DD“, „HH“, „mm“ und „SS“ sind Jahr, Monat, Tag, Stunde, Minuten und Sekunden des Zeitpunkts (in UTC), zu dem der Sicherungsbefehl empfangen wurde.

Während des Sicherungsvorgangs ist der Durchsatz des HSM möglicherweise eingeschränkt, da einige HSM-Partitionen durch den Sicherungsvorgang beansprucht werden.

Sicherung von HSM mithilfe einer benutzerseitig zugewiesenen verwalteten Identität

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

Sicherung von HSM mit SAS-Token

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

Vollständige Wiederherstellung

Mit einer vollständigen Wiederherstellung können Sie den Inhalt des HSM aus einer vorherigen Sicherung vollständig wiederherstellen – einschließlich aller Schlüssel, Versionen, Attribute, Tags und Rollenzuweisungen. Alles, was derzeit im HSM gespeichert ist, wird entfernt, und es wird in den Zustand zurückversetzt, in dem es sich zum Zeitpunkt der Sicherungserstellung befand.

Wichtig

Die vollständige Wiederherstellung ist ein äußerst destruktiver Vorgang. Daher ist es obligatorisch, dass eine vollständige Sicherung mindestens 30 Minuten vor einem restore-Vorgang abgeschlossen worden sein muss, bevor dieser ausgeführt werden kann.

Wiederherstellungsvorgänge werden auf der Datenebene durchgeführt. Der Aufrufer, der den Wiederherstellungsvorgang startet, muss über die Berechtigung zum Ausführen von „dataAction“ (Microsoft.KeyVault/managedHsm/restore/start/action) verfügen. Das Quell-HSM, in dem die Sicherung erstellt wurde, und das Ziel-HSM, in dem die Wiederherstellung durchgeführt wird, müssen über die gleiche Sicherheitsdomäne verfügen. Weitere Informationen zur Sicherheitsdomäne verwalteter HSMs finden Sie hier.

Es gibt zwei Möglichkeiten, eine vollständige Wiederherstellung auszuführen. Zum Ausführen einer vollständigen Wiederherstellung sind folgende Angaben erforderlich:

  • HSM-Name oder -URL
  • Speicherkontoname
  • Speicherkonto-Blobcontainer
  • SAS-Token für benutzerseitig zugewiesene verwaltete Identität ODER Speichercontainer mit den Berechtigungen rl
  • Name des Speichercontainerordners, in dem die Quellsicherung gespeichert ist

Die Wiederherstellung ist ein zeitintensiver Vorgang. Es wird jedoch sofort eine Auftrags-ID zurückgegeben. Mithilfe dieser Auftrags-ID können Sie den Status des Wiederherstellungsprozesses überprüfen. Während des Wiederherstellungsprozesses wird das HSM in einen Wiederherstellungsmodus versetzt, und alle Datenebenenbefehle (mit Ausnahme von „check restore status“) sind deaktiviert.

Wiederherstellung von HSM mithilfe einer benutzerseitig zugewiesenen verwalteten Identität

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

Wiederherstellung von HSM mit SAS-Token

# 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

Selektive Schlüsselwiederherstellung

Mit selektiver Schlüsselwiederherstellung können Sie einen einzelnen Schlüssel mit allen zugehörigen Schlüsselversionen aus einer früheren Sicherung auf ein HSM wiederherstellen.

Selektive Wiederherstellung von Schlüsseln mithilfe einer benutzerseitig zugewiesenen verwalteten Identität

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

Selektive Wiederherstellung von Schlüsseln mit SAS-Token

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

Nächste Schritte