Herstel na noodgeval van beheerde HSM

U kunt een exacte replica van uw HSM maken als het origineel is verloren of niet beschikbaar is vanwege een van deze redenen:

  • Het is verwijderd en vervolgens opgeschoond.
  • Een onherstelbare fout in de regio heeft tot gevolg dat alle ledenpartities zijn vernietigd.

U kunt de HSM-instantie opnieuw maken in dezelfde regio of in een andere regio als u het volgende hebt:

  • Het beveiligingsdomein van de bron-HSM.
  • De persoonlijke sleutels (ten minste het quorumnummer) waarmee het beveiligingsdomein wordt versleuteld.
  • De meest recente, volledige back-up van de bron-HSM.

Dit zijn de stappen van de procedure voor herstel na noodgeval:

  1. Maak een nieuw exemplaar.
  2. Activeer Herstel van beveiligingsdomein. Er wordt een nieuw RSA-sleutelpaar (uitwisselingssleutel voor beveiligingsdomeinen) gegenereerd voor de overdracht van het beveiligingsdomein. Deze wordt als reactie verzonden, waarna een SecurityDomainExchangeKey (openbare sleutel) wordt gedownload.
  3. Maak en upload het bestand voor de overdracht van het beveiligingsdomein. U hebt de persoonlijke sleutels nodig waarmee het beveiligingsdomein wordt versleuteld. De persoonlijke sleutels worden lokaal gebruikt en nooit in dit proces overgedragen.
  4. Maak een back-up van de nieuwe HSM. Er is een back-up vereist voordat een herstelbewerking kan worden uitgevoerd, ook wanneer de HSM leeg is. Met back-ups kan er eenvoudig worden teruggedraaid.
  5. Herstel de recente HSM-back-up van de bron-HSM.

Met deze stappen kunt u de inhoud van de HSM handmatig repliceren naar een andere regio. De HSM-naam (en de URI van het service-eindpunt) zijn anders, dus u moet de configuratie van uw toepassing wijzigen om deze sleutels vanaf een andere locatie te gebruiken.

Een nieuwe beheerde HSM maken

Gebruik de opdracht az keyvault create om een beheerde HSM te maken. Het script heeft drie verplichte parameters: een resourcegroepnaam, een HSM-naam, en de geografische locatie.

U dient de volgende invoer op te geven om een beheerde HSM-resource te maken:

  • De naam van de HSM.
  • De resourcegroep waar de HSM in uw abonnement wordt geplaatst.
  • De Azure-locatie.
  • Een lijst met initiële beheerders.

In het volgende voorbeeld wordt een HSM met de naam ContosoMHSM2 gemaakt, in de resourcegroep ContosoResourceGroup, die zich op de locatie VS - west 3 bevindt, met de huidige aangemelde gebruiker als enige beheerder.

oid=$(az ad signed-in-user show --query objectId -o tsv)
az keyvault create --hsm-name "ContosoMHSM2" --resource-group "ContosoResourceGroup" --location "westus3" --administrators $oid

Notitie

Het kan enkele minuten duren voor de maakopdracht is uitgevoerd. Zodra de opdracht is voltooid, bent u klaar om uw HSM te activeren.

Waarschuwing

Beheerde HSM-exemplaren worden beschouwd als altijd in gebruik. Als u ervoor kiest om beveiliging tegen opschonen in te schakelen met behulp van de --enable-purge-protection vlag, wordt u gefactureerd voor de gehele bewaarperiode.

In de uitvoer van deze opdracht worden de eigenschappen weergegeven van de beheerde HSM die u hebt gemaakt. De twee belangrijkste eigenschappen zijn:

  • name: In het voorbeeld is de naam ContosoMHSM. U gebruikt deze naam voor andere Key Vault-opdrachten.
  • hsmUri: In het voorbeeld is de URI 'https://contosomhsm2.managedhsm.azure.net.' Apps die via de REST API gebruikmaken van uw HSM moeten deze URI gebruiken.

Uw Azure-account is nu gemachtigd om alle bewerkingen op deze beheerde HSM uit te voeren. Op dit moment is nog niemand anders gemachtigd.

De herstelmodus van het beveiligingsdomein activeren

Op dit moment in het normale aanmaakproces initialiseren en downloaden we het nieuwe beveiligingsdomein van de HSM. Omdat we echter een noodherstelprocedure uitvoeren, vragen we de HSM om de herstelmodus van het beveiligingsdomein in te voeren en in plaats daarvan een Exchange-sleutel voor beveiligingsdomein te downloaden. De uitwisselingssleutel voor beveiligingsdomeinen is een openbare RSA-sleutel die wordt gebruikt voor het versleutelen van het beveiligingsdomein voordat het naar de HSM wordt geüpload. De bijbehorende persoonlijke sleutel wordt in de HSM beveiligd, zodat de inhoud van het beveiligingsdomein tijdens de overdracht veilig blijft.

az keyvault security-domain init-recovery --hsm-name ContosoMHSM2 --sd-exchange-key ContosoMHSM2-SDE.cer

Een blob voor het uploaden van een beveiligingsdomein van de bron-HSM maken

Voor deze stap hebt u het volgende nodig:

  • De uitwisselingssleutel van het beveiligingsdomein die u in de vorige stap hebt gedownload.
  • Het beveiligingsdomein van de bron-HSM.
  • Ten minste het quorumnummer van de persoonlijke sleutels waarmee het beveiligingsdomein is versleuteld.

Met de opdracht az keyvault security-domain restore-blob worden de volgende bewerkingen uitgevoerd:

  • Ontsleutelen van het beveiligingsdomein van de bron-HSM met de persoonlijke sleutels die u opgeeft.
  • Een blob voor het uploaden van een beveiligingsdomein maken die is versleuteld met de Exchange-sleutel van het beveiligingsdomein die we in de vorige stap hebben gedownload

Deze stap kan offline worden uitgevoerd.

In het volgende voorbeeld gebruiken we het beveiligingsdomein van de ContosoMHSM, de 3 van de bijbehorende persoonlijke sleutels en de Exchange-sleutel van het beveiligingsdomein om een versleutelde blob te maken en te downloaden die we gaan gebruiken om te uploaden naar ContosoMHSM2, die wacht op het ontvangen van een beveiligingsdomein.

az keyvault security-domain restore-blob --sd-exchange-key ContosoMHSM2-SDE.cer --sd-file ContosoMHSM-SD.json --sd-wrapping-keys cert_0.key cert_1.key cert_2.key --sd-file-restore-blob restore_blob.json 

Upload Security Domain Upload blob naar doel HSM

We gebruiken nu de blob voor het uploaden van beveiligingsdomeinen die in de vorige stap is gemaakt en uploaden deze naar de doel-HSM om het herstel van het beveiligingsdomein te voltooien. De --restore-blob vlag wordt gebruikt om te voorkomen dat sleutels in een onlineomgeving worden weergegeven.

az keyvault security-domain upload --hsm-name ContosoMHSM2 --sd-file restore_blob.json --restore-blob

De bron-HSM (ContosoMHSM) en de doel-HSM (ContosoMHSM2) hebben nu hetzelfde beveiligingsdomein. Er kan nu een volledige back-up van de bron-HSM in de doel-HSM worden hersteld.

Back-ups en herstellen

Het is altijd een goed idee om een volledige back-up te maken voordat u een volledige HSM-herstelbewerking uitvoert, zodat u een herstelpunt hebt als er iets misgaat met het herstellen. U kunt dit doen met behulp van een van de twee methoden: door de gebruiker toegewezen beheerde identiteit of SAS-tokens.

Een back-up maken (als herstelpunt) van de nieuwe HSM

Als u een HSM-back-up wilt maken, hebt u het volgende nodig:

  • Een opslagaccount waarin de back-up wordt opgeslagen
  • Een container voor blob-opslag in dit opslagaccount, waar door het back-upproces een nieuwe map wordt gemaakt voor de versleutelde back-up
  • Een door de gebruiker toegewezen beheerde identiteit met de rol Inzender voor opslagblobgegevens in het opslagaccount OF sas-token voor opslagcontainer met machtigingen 'crdw'

We gebruiken az keyvault backup command to the HSM backup in the storage container mhsmbackupcontainer, which is in the storage account mhsmdemobackup in de volgende voorbeelden.

Als u de door de gebruiker toegewezen beheerde identiteitsmethode gebruikt, geven we de door de gebruiker toegewezen beheerde identiteit op met de --mi-user-assigned parameter en koppelen we deze aan de beheerde HSM voordat we de back-up in het onderstaande voorbeeld schrijven.

az keyvault update-hsm --hsm-name ContosoMHSM2 --mi-user-assigned "/subscriptions/subid/resourcegroups/mhsmrgname/providers/Microsoft.ManagedIdentity/userAssignedIdentities/userassignedidentityname"
az keyvault backup start --use-managed-identity true --hsm-name ContosoMHSM2 --storage-account-name mhsmdemobackup --blob-container-name mhsmbackupcontainer

Back-up herstellen vanuit bron-HSM

Voor deze stap hebt u het volgende nodig:

  • Het opslagaccount en de blobcontainer waarin de back-ups van de bron-HSM worden opgeslagen.
  • De naam van de map waaruit u de back-up wilt terugzetten. Als u regelmatig back-ups maakt, bevat deze container een groot aantal mappen.

We gebruiken az keyvault restore command to the new HSM ContosoMHSM2, using the backup of the source MHSM we are to restore, which is in the folder name mhsm-ContosoMHSM-2020083120161860 found in the storage container mhsmdemobackupcontainer of the storage account ContosoBackup in het volgende voorbeeld.

Als u de door de gebruiker toegewezen beheerde identiteitsmethode gebruikt, stellen we de --use-managed-identity pramater in op 'true'.

az keyvault restore start --hsm-name ContosoMHSM2 --storage-account-name ContosoBackup --blob-container-name mhsmdemobackupcontainer --backup-folder mhsm-ContosoMHSM-2020083120161860 --use-managed-identity true

U hebt nu een volledig proces voor herstel na noodgevallen voltooid. De inhoud van de bron-HSM toen de back-up werd gemaakt, wordt gekopieerd naar de doel-HSM, inclusief alle sleutels, versies, kenmerken, tags en roltoewijzingen.

Volgende stappen