Importera HSM-skyddade nycklar till Key Vault (BYOK)

För ytterligare säkerhet när du använder Azure Key Vault kan du importera eller generera en nyckel i en maskinvarusäkerhetsmodul (HSM); nyckeln lämnar aldrig HSM-gränsen. Det här scenariot kallas ofta BYOK (Bring Your Own Key ). Key Vault använder FIPS 140-verifierade HSM:er för att skydda dina nycklar.

Använd informationen i den här artikeln för att planera, generera och överföra dina egna HSM-skyddade nycklar som ska användas med Azure Key Vault.

Kommentar

Den här funktionen är inte tillgänglig för Microsoft Azure som drivs av 21Vianet.

Den här importmetoden är endast tillgänglig för HSM:er som stöds.

Mer information och en självstudiekurs för att komma igång med Key Vault (inklusive hur du skapar ett nyckelvalv för HSM-skyddade nycklar) finns i Vad är Azure Key Vault?.

Översikt

Här är en översikt över processen. Specifika steg att slutföra beskrivs senare i artikeln.

  • I Key Vault genererar du en nyckel (kallas nyckelutbytesnyckel (KEK).) KEK måste vara en RSA-HSM-nyckel som bara har nyckelåtgärden import . Endast Key Vault Premium och Managed HSM stöder RSA-HSM-nycklar.
  • Ladda ned den offentliga KEK-nyckeln som en .pem-fil.
  • Överför den offentliga KEK-nyckeln till en offlinedator som är ansluten till en lokal HSM.
  • På offlinedatorn använder du BYOK-verktyget som tillhandahålls av HSM-leverantören för att skapa en BYOK-fil.
  • Målnyckeln krypteras med en KEK som förblir krypterad tills den överförs till Key Vault HSM. Endast den krypterade versionen av nyckeln lämnar den lokala HSM:en.
  • En KEK som genereras i en Key Vault HSM kan inte exporteras. HSM:er tillämpar regeln att det inte finns någon tydlig version av en KEK utanför en Key Vault HSM.
  • KEK:et måste finnas i samma nyckelvalv där målnyckeln ska importeras.
  • När BYOK-filen laddas upp till Key Vault använder en Key Vault HSM den privata KEK-nyckeln för att dekryptera målnyckelmaterialet och importera det som en HSM-nyckel. Den här åtgärden sker helt i en Key Vault HSM. Målnyckeln finns alltid kvar i HSM-skyddsgränsen.

Förutsättningar

I följande tabell visas förutsättningar för användning av BYOK i Azure Key Vault:

Krav Mer information
En Azure-prenumeration Om du vill skapa ett nyckelvalv i Azure Key Vault behöver du en Azure-prenumeration. Registrera dig för en kostnadsfri utvärderingsversion.
En Key Vault Premium eller hanterad HSM för import av HSM-skyddade nycklar Mer information om tjänstnivåer och funktioner i Azure Key Vault finns i Priser för Key Vault.
En HSM från listan över HSM:er som stöds och ett BYOK-verktyg och instruktioner från din HSM-leverantör Du måste ha behörighet för en HSM och grundläggande kunskaper om hur du använder din HSM. Se HSM:er som stöds.
Azure CLI version 2.1.0 eller senare Se Installera Azure CLI.

HSM:er som stöds

Leverantörsnamn Leverantörstyp HSM-modeller som stöds Mer information
Kryptomathic ISV (Enterprise Key Management System) Flera HSM-varumärken och modeller, inklusive
  • nChiffrera
  • Thales
  • Utimaco
Mer information finns på kryptomathisk webbplats
Anförtro Tillverkare
HSM som en tjänst
  • nShield familj av HSM:er
  • nShield som en tjänst
nChiffrera nytt BYOK-verktyg och dokumentation
Fortanix Tillverkare
HSM som en tjänst
  • Självförsvarande nyckelhanteringstjänst (KMS) (SDKMS)
  • Equinix SmartKey
Exportera SDKMS-nycklar till molnleverantörer för BYOK – Azure Key Vault
IBM Tillverkare IBM 476x, CryptoExpress IBM Enterprise Key Management Foundation
Marvell Tillverkare Alla LiquidSecurity HSM:er med
  • Version 2.0.4 eller senare av inbyggd programvara
  • Version 3.2 eller senare av inbyggd programvara
Marvell BYOK-verktyg och dokumentation
nChiffrera Tillverkare
HSM som en tjänst
  • nShield familj av HSM:er
  • nShield som en tjänst
nChiffrera nytt BYOK-verktyg och dokumentation
Securosys SA Tillverkare
HSM som en tjänst
Primus HSM-familj, Securosys Clouds HSM Primus BYOK-verktyg och dokumentation
StorMagic ISV (Enterprise Key Management System) Flera HSM-varumärken och modeller, inklusive
  • Utimaco
  • Thales
  • nChiffrera
Mer information finns på StorMagic-webbplatsen
SvKMS och Azure Key Vault BYOK
Thales Tillverkare
  • Luna HSM 7-familj med inbyggd programvara version 7.3 eller senare
Luna BYOK-verktyg och dokumentation
Utimaco Tillverkare
HSM som en tjänst
u.trust Anchor, CryptoServer Utimaco BYOK-verktyg och integrationsguide

Nyckeltyper som stöds

Nyckelnamn Nyckeltyp Nyckelstorlek/kurva Ursprung beskrivning
Nyckelutbytesnyckel (KEK) RSA 2 048 bitar
3 072 bitar
4 096 bitar
Azure Key Vault HSM Ett HSM-backat RSA-nyckelpar som genererats i Azure Key Vault
Målnyckel
RSA 2 048 bitar
3 072 bitar
4 096 bitar
Leverantörs-HSM Nyckeln som ska överföras till Azure Key Vault HSM
EC P-256
P-384
P-521
Leverantörs-HSM Nyckeln som ska överföras till Azure Key Vault HSM

Generera och överföra din nyckel till Key Vault Premium HSM eller Managed HSM

Så här genererar och överför du din nyckel till Key Vault Premium eller Managed HSM:

Generera en KEK

En KEK är en RSA-nyckel som genereras i en Key Vault Premium eller hanterad HSM. KEK används för att kryptera den nyckel som du vill importera (målnyckeln).

KEK:et måste vara:

  • En RSA-HSM-nyckel (2 048 bitar, 3 072 bitar eller 4 096 bitar)
  • Genereras i samma nyckelvalv där du tänker importera målnyckeln
  • Skapades med tillåtna nyckelåtgärder inställda på import

Kommentar

KEK måste ha "import" som den enda tillåtna nyckelåtgärden. "import" är ömsesidigt uteslutande med alla andra viktiga åtgärder.

Använd kommandot az keyvault key create för att skapa en KEK som har nyckelåtgärder inställda på import. Registrera nyckelidentifieraren (kid) som returneras från följande kommando. (Du använder värdet kid i steg 3.)

az keyvault key create --kty RSA-HSM --size 4096 --name KEKforBYOK --ops import --vault-name ContosoKeyVaultHSM

För Hanterad HSM:

az keyvault key create --kty RSA-HSM --size 4096 --name KEKforBYOK --ops import --hsm-name ContosoKeyVaultHSM

Ladda ned den offentliga KEK-nyckeln

Använd az keyvault key download för att ladda ned den offentliga KEK-nyckeln till en .pem-fil. Målnyckeln som du importerar krypteras med hjälp av den offentliga KEK-nyckeln.

az keyvault key download --name KEKforBYOK --vault-name ContosoKeyVaultHSM --file KEKforBYOK.publickey.pem

För Hanterad HSM:

az keyvault key download --name KEKforBYOK --hsm-name ContosoKeyVaultHSM --file KEKforBYOK.publickey.pem

Överför filen KEKforBYOK.publickey.pem till offlinedatorn. Du behöver den här filen i nästa steg.

Generera och förbereda din nyckel för överföring

I HSM-leverantörens dokumentation kan du ladda ned och installera BYOK-verktyget. Följ anvisningarna från HSM-leverantören för att generera en målnyckel och skapa sedan ett nyckelöverföringspaket (en BYOK-fil). BYOK-verktyget använder kid från steg 1 och filen KEKforBYOK.publickey.pem som du laddade ned i steg 2 för att generera en krypterad målnyckel i en BYOK-fil.

Överför BYOK-filen till den anslutna datorn.

Kommentar

Det går inte att importera RSA 1 024-bitarsnycklar. Import av Elliptisk kurvnyckel med kurva P-256K stöds.

Känt problem: Import av en RSA 4K-målnyckel från Luna HSMs stöds endast med inbyggd programvara 7.4.0 eller senare.

Överföra din nyckel till Azure Key Vault

Slutför nyckelimporten genom att överföra nyckelöverföringspaketet (en BYOK-fil) från den frånkopplade datorn till den Internetanslutna datorn. Använd kommandot az keyvault key import för att ladda upp BYOK-filen till Key Vault HSM.

Om du vill importera en RSA-nyckel använder du följande kommando. Parametern --kty är valfri och standardvärdet är RSA-HSM.

az keyvault key import --vault-name ContosoKeyVaultHSM --name ContosoFirstHSMkey --byok-file KeyTransferPackage-ContosoFirstHSMkey.byok

För hanterad HSM

az keyvault key import --hsm-name ContosoKeyVaultHSM --name ContosoFirstHSMkey --byok-file KeyTransferPackage-ContosoFirstHSMkey.byok

Om du vill importera en EC-nyckel måste du ange nyckeltypen och kurvnamnet.

az keyvault key import --vault-name ContosoKeyVaultHSM --name ContosoFirstHSMkey --kty EC-HSM --curve-name "P-256" --byok-file KeyTransferPackage-ContosoFirstHSMkey.byok

För hanterad HSM

az keyvault key import --hsm-name ContosoKeyVaultHSM --name ContosoFirstHSMkey --byok-file --kty EC-HSM --curve-name "P-256" KeyTransferPackage-ContosoFirstHSMkey.byok

Om uppladdningen lyckas visar Azure CLI egenskaperna för den importerade nyckeln.

Nästa steg

Nu kan du använda den här HSM-skyddade nyckeln i ditt nyckelvalv. Mer information finns i den här pris- och funktionsjämförelsen.