Zotavení po havárii spravovaného HSM

Pokud dojde ke ztrátě nebo nedostupnosti původního modulu hardwarového zabezpečení, můžete vytvořit přesnou repliku vašeho HSM z některého z těchto důvodů:

  • Odstranila se a pak vyprázdnila.
  • Katastrofální selhání v oblasti způsobilo zničení všech oddílů členů.

Pokud máte, můžete instanci HSM znovu vytvořit ve stejné nebo jiné oblasti:

  • Doména zabezpečení zdrojového HSM.
  • Privátní klíče (alespoň číslo kvora), které šifrují doménu zabezpečení.
  • Nejnovější úplná záloha HSM ze zdrojového HSM.

Tady jsou kroky postupu zotavení po havárii:

  1. Vytvořte novou instanci HSM.
  2. Aktivujte obnovení domény zabezpečení. Pro přenos domény zabezpečení se vygeneruje nový pár klíčů RSA (Security Domain Exchange Key) a odešle se v odpovědi, který se stáhne jako SecurityDomainExchangeKey (veřejný klíč).
  3. Vytvořte a pak nahrajte soubor pro přenos domény zabezpečení. Budete potřebovat privátní klíče, které šifrují doménu zabezpečení. Privátní klíče se používají místně a nikdy se v tomto procesu nepřenesou.
  4. Vytvořte zálohu nového modulu HSM. Před jakýmkoli obnovením se vyžaduje záloha, a to i v případě, že je HSM prázdný. Zálohy umožňují snadné vrácení zpět.
  5. Obnovte poslední zálohu HSM ze zdrojového HSM.

Tyto kroky vám umožní ručně replikovat obsah HSM do jiné oblasti. Název HSM (a identifikátor URI koncového bodu služby) se bude lišit, takže budete muset změnit konfiguraci aplikace, aby se tyto klíče používaly z jiného umístění.

Vytvoření nového spravovaného HSM

az keyvault create Pomocí příkazu vytvořte spravovaný HSM. Tento skript má tři povinné parametry: název skupiny prostředků, název HSM a zeměpisné umístění.

Pokud chcete vytvořit spravovaný prostředek HSM, musíte zadat následující vstupy:

  • Název modulu hardwarového zabezpečení (HSM).
  • Skupina prostředků, do které se umístí do vašeho předplatného.
  • Umístění Azure.
  • Seznam počátečních správců

Následující příklad vytvoří HSM s názvem ContosoMHSM2 ve skupině prostředků ContosoResourceGroup, která se nachází v umístění USA – západ 3 , s aktuálním přihlášeným uživatelem jako jediným správcem.

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

Poznámka:

Vytvoření příkazu může trvat několik minut. Jakmile se úspěšně vrátí, jste připraveni k aktivaci modulu HSM.

Upozorňující

Spravované instance HSM se považují za vždy používané. Pokud se rozhodnete povolit ochranu před vymazáním pomocí příznaku --enable-purge-protection , bude se vám účtovat celá doba uchovávání.

Výstup tohoto příkazu zobrazuje vlastnosti spravovaného HSM, které jste vytvořili. Dvě nejdůležitější vlastnosti jsou:

  • name: V příkladu je název ContosoMHSM. Tento název použijete pro další příkazy služby Key Vault.
  • hsmUri: V příkladu je identifikátor URI 'https://contosomhsm2.managedhsm.azure.net.' Aplikace, které používají hsm prostřednictvím rozhraní REST API, musí používat tento identifikátor URI.

Váš účet Azure má teď oprávnění provádět všechny operace s tímto spravovaným HSM. Zatím nikdo jiný nemá oprávnění.

Aktivace režimu obnovení domény zabezpečení

V tomto okamžiku v normálním procesu vytváření inicializujeme a stáhneme novou doménu zabezpečení HSM. Vzhledem k tomu, že provádíme postup zotavení po havárii, požádáme hsM o vstup do režimu obnovení domény zabezpečení a místo toho stáhneme klíč exchange domény zabezpečení. Klíč výměny domény zabezpečení je veřejný klíč RSA, který se použije k zašifrování domény zabezpečení před jeho nahráním do HSM. Odpovídající privátní klíč je chráněn uvnitř HSM, aby byl obsah vaší domény zabezpečení během přenosu v bezpečí.

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

Vytvoření objektu blob pro nahrání domény zabezpečení zdrojového HSM

Pro tento krok budete potřebovat:

  • Klíč exchange domény zabezpečení, který jste si stáhli v předchozím kroku.
  • Doména zabezpečení zdrojového HSM.
  • Alespoň počet privátních klíčů kvora, které byly použity k šifrování domény zabezpečení.

Příkaz az keyvault security-domain restore-blob provádí následující operace:

  • Dešifrujte doménu zabezpečení zdrojového HSM pomocí privátních klíčů, které zadáte.
  • Vytvoření objektu blob pro nahrání domény zabezpečení zašifrovaného klíčem Exchange domény zabezpečení, který jsme stáhli v předchozím kroku

Tento krok je možné provést offline.

V následujícím příkladu použijeme doménu zabezpečení z ContosoMHSM, 3 z odpovídajících privátních klíčů a klíč Exchange domény zabezpečení k vytvoření a stažení šifrovaného objektu blob, který použijeme k nahrání do ContosoMHSM2, což čeká na přijetí domény zabezpečení.

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 

Nahrání objektu blob pro nahrání domény zabezpečení do cílového HSM

K dokončení obnovení domény zabezpečení teď používáme objekt blob pro nahrání domény zabezpečení vytvořený v předchozím kroku a nahrajeme ho do cílového HSM. Příznak --restore-blob slouží k zabránění zveřejnění klíčů v online prostředí.

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

Teď mají zdrojový HSM (ContosoMHSM) i cílový HSM (ContosoMHSM2) stejnou doménu zabezpečení. Teď můžeme obnovit úplnou zálohu ze zdrojového HSM do cílového HSM.

Zálohování a obnovení

Před spuštěním úplného obnovení HSM je vždy vhodné provést úplné zálohování, abyste měli bod obnovení v případě, že se s obnovením něco nepokazilo. Můžete to provést pomocí jedné ze dvou metod: spravovaná identita přiřazená uživatelem nebo tokeny SAS.

Vytvoření zálohy (jako bodu obnovení) nového HSM

K vytvoření zálohy HSM budete potřebovat:

  • Účet úložiště, ve kterém bude záloha uložena
  • Kontejner úložiště objektů blob v tomto účtu úložiště, kde proces zálohování vytvoří novou složku pro uložení šifrovaného zálohování.
  • Spravovaná identita přiřazená uživatelem, která má roli Přispěvatel dat objektů blob úložiště v účtu úložiště NEBO token SAS kontejneru úložiště s oprávněními crdw

Příkaz az keyvault backup použijeme k zálohování HSM v kontejneru úložiště mhsmbackupcontainer, který je v účtu úložiště mhsmdemobackup v následujících příkladech.

Pokud používáme metodu spravované identity přiřazené uživatelem, určíme spravovanou identitu přiřazenou uživatelem s parametrem --mi-user-assigned a před zápisem zálohy v následujícím příkladu ji přidružíme ke spravovanému HSM.

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

Obnovení zálohy ze zdrojového HSM

Pro tento krok potřebujete:

  • Účet úložiště a kontejner objektů blob, ve kterém jsou uloženy zálohy zdrojového HSM.
  • Název složky, ze které chcete zálohu obnovit. Pokud vytváříte pravidelné zálohy, bude v tomto kontejneru mnoho složek.

Příkaz az keyvault restore použijeme k novému modulu HSM ContosoMHSM2 pomocí zálohy zdrojového MHSM, který se pokoušíme obnovit, což je v názvu složky mhsm-ContosoMHSM-2020083120161860 nalezené v kontejneru úložiště mhsmdemobackupcontainer účtu úložiště ContosoBackup v následujícím příkladu.

Pokud používáme metodu spravované identity přiřazené uživatelem, nastavíme --use-managed-identity pramater na 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

Teď jste dokončili celý proces zotavení po havárii. Obsah zdrojového HSM při provedení zálohování se zkopíruje do cílového HSM, včetně všech klíčů, verzí, atributů, značek a přiřazení rolí.

Další kroky