Dela via


Importera HSM-skyddade nycklar till Managed HSM (BYOK)

Azure Key Vault Managed HSM stöder import av nycklar som genereras i din lokala maskinvarusäkerhetsmodul (HSM). Nycklarna lämnar aldrig HSM-skyddsgränsen. Det här scenariot kallas ofta BYOK (Bring Your Own Key). Managed HSM använder Marvell LiquidSecurity HSM-korten (FIPS 140-3 Level 3 validerade) 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 Managed HSM.

Anmärkning

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 managed HSM finns i Vad är Hanterad HSM?

Översikt

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

  • Generera en nyckel i Managed HSM (kallas för en Key Exchange Key (KEK)). KEK måste vara en RSA-HSM-nyckel som bara har nyckelåtgärden import .
  • 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 den hanterade HSM:en. Endast den krypterade versionen av nyckeln lämnar den lokala HSM:en.
  • En KEK som genereras i en hanterad HSM kan inte exporteras. HSM:er tillämpar regeln att det inte finns någon tydlig version av en KEK utanför en hanterad HSM.
  • KEK måste finnas i samma hanterade HSM där målnyckeln importeras.
  • När du laddar upp BYOK-filen till Managed HSM använder en hanterad 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 HSM. Målnyckeln stannar alltid kvar inom HSM-skyddsområdet.

Förutsättningar

En Azure prenumeration krävs. Om du inte har ett konto kan du skapa ett kostnadsfritt konto innan du börjar.

Du behöver också:

Azure Cloud Shell

Azure värdar Azure Cloud Shell, en interaktiv gränssnittsmiljö som du kan använda via webbläsaren. Du kan använda antingen Bash eller PowerShell med Cloud Shell för att arbeta med Azure tjänster. Du kan använda Cloud Shell förinstallerade kommandon för att köra koden i den här artikeln, utan att behöva installera något i din lokala miljö.

Så här startar du Azure Cloud Shell:

Alternativ Exempel/länk
Välj Försök i det övre högra hörnet av kod- eller kommandoblocket. Om du väljer Try It kopieras inte koden eller kommandot automatiskt till Cloud Shell. Screenshot som visar ett exempel på Try It for Azure Cloud Shell.
Gå till https://shell.azure.com eller välj knappen Launch Cloud Shell för att öppna Cloud Shell i webbläsaren. Knapp för att starta Azure Cloud Shell.
Välj knappen Cloud Shell i menyraden längst upp till höger i Azure-portalen. Skärmbild som visar knappen Cloud Shell i Azure-portalen

Så här använder du Azure Cloud Shell:

  1. Starta Cloud Shell.

  2. Välj knappen Kopiera i ett kodblock (eller kommandoblock) för att kopiera koden eller kommandot.

  3. Klistra in koden eller kommandot i den Cloud Shell sessionen genom att välja Ctrl+Shift+V på Windows och Linux, eller genom att välja Cmd+Shift+V på macOS.

  4. Välj Ange för att köra koden eller kommandot.

Om du vill logga in på Azure med hjälp av CLI skriver du:

az login

Mer information om autentiseringsalternativ via kommandoradsgränssnittet finns i logga in med Azure CLI.

HSM:er som stöds

Leverantörsnamn Leverantörstyp HSM-modeller som stöds Mer information
Kryptomathic ISV (Företagsnyckelhanteringssystem) Flera HSM-varumärken och modeller, inklusive
  • nCipher
  • 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
nCipher nytt verktyg för BYOK och dokumentation
Fortanix Tillverkare
HSM som en tjänst
  • Självförsvarande nyckelhanteringstjänst (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
Securosys SA Tillverkare, HSM som en tjänst Primus HSM-familj, Securosys Clouds HSM Primus BYOK-verktyg och dokumentation
StorMagic ISV (Företagsnyckelhanteringssystem) Flera HSM-varumärken och modeller, inklusive
  • Utimaco
  • Thales
  • nCipher
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-HSM 2 048 bit
3 072 bitar
4 096 bitar
Hanterad HSM Ett HSM-stödt RSA-nyckelpar som genererats i Managed HSM
Målnyckel
RSA-HSM 2 048 bit
3 072 bitar
4 096 bitar
Leverantör HSM Nyckeln som ska överföras till Managed HSM
EC-HSM P-256
P-384
P-521
Leverantör HSM Nyckeln som ska överföras till Managed HSM
Symmetrisk nyckel (oct-hsm) 128-bit
192-bitars
256-bit
Leverantör HSM Nyckeln som ska överföras till Managed HSM

Generera och överföra din nyckel till Managed HSM

Steg 1: Generera en KEK

En KEK är en RSA-nyckel som du genererar i en hanterad HSM. Använd KEK 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 hanterade HSM där du tänker importera målnyckeln
  • Skapades med tillåtna nyckelåtgärder inställda på import

Anmärkning

KEK måste ha import som den enda tillåtna nyckeloperationen. import utesluter ömsesidigt alla andra nyckeloperationer.

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 --hsm-name <hsm-name>

Steg 2: 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 --hsm-name <hsm-name> --file KEKforBYOK.publickey.pem

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

Steg 3: Generera och förbereda nyckeln för överföring

Information om hur du laddar ned och installerar BYOK-verktyget finns i HSM-leverantörens dokumentation. 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 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.

Anmärkning

Import av RSA 1 024-bitarsnycklar stöds inte. Import av EC-HSM P256K-nycklar 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.

Steg 4: Överför nyckeln till Hanterad HSM

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 Managed HSM.

az keyvault key import --hsm-name <hsm-name> --name <key-name> --byok-file KeyTransferPackage-<key-name>.byok

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

Nästa steg

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