Met HSM beveiligde sleutels importeren in beheerde HSM (BYOK)
Beheerde HSM van Azure Key Vault ondersteunt het importeren van sleutels die zijn gegenereerd in uw on-premises HSM (Hardware Security Module); de sleutels zullen nooit de HSM-beveiligingsgrens verlaten. Dit scenario wordt vaak aangeduid als Bring Your Own Key (BYOK). Beheerde HSM maakt gebruik van de Marvell LiquidSecurity HSM-adapters (gevalideerd voor FIPS 140-2 Level 3) om uw sleutels te beveiligen.
Gebruik de informatie in dit artikel om u te helpen bij het plannen, genereren en overdragen van uw eigen met HSM beveiligde sleutels voor gebruik met beheerde HSM.
Notitie
Deze functionaliteit is niet beschikbaar voor Microsoft Azure beheerd door 21Vianet. Deze importmethode is alleen beschikbaar voor ondersteunde HSM's.
Zie Wat is Beheerde HSM?voor meer informatie en voor een zelfstudie om aan de slag te gaan met beheerde HSM.
Overzicht
Hier volgt een overzicht van het proces. De specifieke uit te voeren stappen worden verderop in het artikel beschreven.
- Genereer in beheerde HSM een sleutel (ook wel een KEK (Key Exchange Key) genoemd). De KEK moet een RSA-HSM-sleutel zijn die alleen de sleutelbewerking
import
bevat. - Download de openbare KEK-sleutel als een .pem-bestand.
- Draag de openbare KEK-sleutel over naar een offline computer die is verbonden met een on-premises HSM.
- Gebruik op de offline computer het BYOK-hulpprogramma van de HSM-leverancier om een BYOK-bestand te maken.
- De doelsleutel wordt versleuteld met een KEK, die versleuteld blijft totdat deze wordt overgedragen naar de beheerde HSM. Alleen de versleutelde versie van de sleutel verlaat de on-premises HSM.
- Een KEK die wordt gegenereerd in een beheerde HSM, kan niet worden geëxporteerd. HSM's dwingen de regel af dat er geen duidelijke versie van een KEK bestaat buiten een beheerde HSM.
- De KEK moet zich in dezelfde beheerde HSM bevinden waar de doelsleutel wordt geïmporteerd.
- Wanneer het BYOK-bestand wordt geüpload naar beheerde HSM, gebruikt een beheerde HSM de persoonlijke KEK-sleutel om het doelsleutelmateriaal te ontsleutelen en te importeren als een HSM-sleutel. Deze bewerking vindt volledig plaats in de HSM. De doelsleutel blijft altijd binnen de beschermingsgrens van de HSM.
Vereisten
Als u de Azure CLI-opdrachten in dit artikel wilt gebruiken, hebt u het volgende nodig:
- Een abonnement op Microsoft Azure. Als u nog geen abonnement hebt, kunt u zich aanmelden voor een gratis proefabonnement.
- Azure CLI versie 2.12.0 of hoger. Voer
az --version
uit om de versie te bekijken. Als u uw CLI wilt installeren of upgraden, raadpleegt u De Azure CLI installeren. - Een beheerde HSM in de lijst met ondersteunde HSM's in uw abonnement. Zie quickstart: Een beheerde HSM inrichten en activeren met behulp van Azure CLI om een beheerde HSM in te richten en te activeren.
Azure Cloud Shell
Azure host Azure Cloud Shell, een interactieve shell-omgeving die u via uw browser kunt gebruiken. U kunt Bash of PowerShell gebruiken met Cloud Shell om met Azure-services te werken. U kunt de vooraf geïnstalleerde Cloud Shell-opdrachten gebruiken om de code in dit artikel uit te voeren zonder dat u iets hoeft te installeren in uw lokale omgeving.
Om Azure Cloud Shell op te starten:
Optie | Voorbeeld/koppeling |
---|---|
Selecteer Uitproberen in de rechterbovenhoek van een code- of opdrachtblok. Als u Try It selecteert, wordt de code of opdracht niet automatisch gekopieerd naar Cloud Shell. | |
Ga naar https://shell.azure.com, of selecteer de knop Cloud Shell starten om Cloud Shell in uw browser te openen. | |
Klik op de knop Cloud Shell in het menu in de balk rechtsboven in de Azure-portal. |
Azure Cloud Shell gebruiken:
Start Cloud Shell.
Selecteer de knop Kopiëren op een codeblok (of opdrachtblok) om de code of opdracht te kopiëren.
Plak de code of opdracht in de Cloud Shell-sessie door Ctrl+Shift+V in Windows en Linux te selecteren of door Cmd+Shift+V te selecteren in macOS.
Selecteer Enter om de code of opdracht uit te voeren.
Als u zich wilt aanmelden bij Azure met behulp van de CLI, typt u:
az login
Zie aanmelden met Azure CLI voor meer informatie over aanmeldingsopties via de CLI
Ondersteunde HSM's
Leveranciernaam | Type leverancier | Ondersteunde HSM-modellen | Meer informatie |
---|---|---|---|
Cryptomathic | ISV (Enterprise Key Management System) | Meerdere HSM-merken en -modellen, inclusief
|
|
Toevertrouwen | Fabrikant, HSM as a service |
|
Nieuw BYOK-hulpprogramma en -documentatie van nCipher |
Fortanix | Fabrikant, HSM as a service |
|
SDKMS-sleutels exporteren naar cloudproviders voor BYOK - Azure Key Vault |
IBM | Fabrikant | IBM 476x, CryptoExpress | IBM Enterprise Key Management Foundation |
Marvell | Fabrikant | Alle LiquidSecurity-HSM's met
|
BYOK-hulpprogramma en -documentatie van Marvell |
Securosys SA | Fabrikant, HSM als een service | Primus HSM-serie, Securosys Clouds HSM | BYOK-hulpprogramma en -documentatie van Primus |
StorMagic | ISV (Enterprise Key Management System) | Meerdere HSM-merken en -modellen, inclusief
|
SvKMS en Azure Key Vault BYOK |
Thales | Fabrikant |
|
BYOK-hulpprogramma en -documentatie van Luna |
Utimaco | Fabrikant, HSM as a service |
u.trust Anchor, CryptoServer | Utimaco BYOK-hulpprogramma en integratiehandleiding |
Ondersteunde sleuteltypen
Sleutelnaam | Type sleutel | Sleutelgrootte/curve | Oorprong | Beschrijving |
---|---|---|---|---|
Key Exchange Key (KEK) | RSA-HSM | 2048-bits 3072-bits 4096-bits |
Beheerde HSM | Een RSA-sleutelpaar met HSM-ondersteuning dat is gegenereerd in beheerde HSM |
Doelsleutel | ||||
RSA-HSM | 2048-bits 3072-bits 4096-bits |
HSM-leverancier | De sleutel die moet worden overgedragen naar de beheerde HSM | |
EC-HSM | P-256 P-384 P-521 |
HSM-leverancier | De sleutel die moet worden overgedragen naar de beheerde HSM | |
Symmetrische sleutel (oct-hsm) | 128-bits 192-bits 256-bits |
HSM-leverancier | De sleutel die moet worden overgedragen naar de beheerde HSM | |
Uw sleutel genereren en overdragen naar de beheerde HSM
Stap 1: Een KEK genereren
Een KEK is een RSA-sleutel die wordt gegenereerd in een beheerde HSM. De KEK wordt gebruikt voor het versleutelen van de sleutel die u wilt importeren (de doelsleutel).
De KEK moet aan het volgende voldoen:
- Een RSA-HSM-sleutel (2048-bits, 3072-bits of 4096-bits)
- Gegenereerd in dezelfde beheerde HSM waar u de doelsleutel wilt importeren
- Gemaakt met toegestane sleutelbewerkingen ingesteld op
import
Notitie
De KEK moet 'import' bevatten als de enige toegestane sleutelbewerking. 'import' en alle andere sleutelbewerkingen sluiten elkaar wederzijds uit.
Gebruik de opdracht az keyvault key create om een KEK te maken waarbij de sleutelbewerkingen zijn ingesteld op import
. Noteer de sleutel-id (kid
) die wordt geretourneerd met de volgende opdracht. (U gebruikt de kid
waarde in stap 3.)
az keyvault key create --kty RSA-HSM --size 4096 --name KEKforBYOK --ops import --hsm-name ContosoKeyVaultHSM
Stap 2: De openbare KEK-sleutel downloaden
Gebruik az keyvault key download om de openbare KEK-sleutel te downloaden naar een .pem-bestand. De doelsleutel die u importeert, wordt versleuteld met behulp van de openbare KEK-sleutel.
az keyvault key download --name KEKforBYOK --hsm-name ContosoKeyVaultHSM --file KEKforBYOK.publickey.pem
Draag het bestand KEKforBYOK.publickey.pem over naar uw offline computer. U hebt dit bestand nodig in de volgende stap.
Stap 3: Uw sleutel genereren en voorbereiden voor overdracht
Raadpleeg de documentatie van uw HSM-leverancier om het BYOK-hulpprogramma te downloaden en te installeren. Volg de instructies van de HSM-leverancier om een doelsleutel te genereren en maak vervolgens een sleuteloverdrachtspakket (een BYOK-bestand). Het BYOK-hulpprogramma gebruikt de kid
van stap 1 en het bestand KEKforBYOK.publickey.pem dat u in stap 2 hebt gedownload om een versleutelde doelsleutel in een BYOK-bestand te genereren.
Draag het BYOK-bestand over naar de verbonden computer.
Notitie
Het importeren van 1024-bits RSA-sleutels wordt niet ondersteund. Het importeren van EC-HSM P256K-sleutels wordt ondersteund.
Bekend probleem: het importeren van een RSA 4K-doelsleutel van Luna HSM's wordt alleen ondersteund met firmware 7.4.0 of hoger.
Stap 4: Uw sleutel overdragen naar beheerde HSM
Om de sleutelimport te voltooien, draagt u het sleuteloverdrachtspakket (een BYOK-bestand) over van de niet-verbonden computer naar de computer met internetverbinding. Gebruik de opdracht az keyvault key import om het BYOK-bestand te uploaden naar de beheerde HSM.
az keyvault key import --hsm-name ContosoKeyVaultHSM --name ContosoFirstHSMkey --byok-file KeyTransferPackage-ContosoFirstHSMkey.byok
Als het uploaden is gelukt, worden in Azure CLI de eigenschappen van de geïmporteerde sleutel weergegeven.
Volgende stappen
U kunt deze met HSM beveiligde sleutel nu gebruiken in uw beheerde HSM. Zie voor meer informatie deze vergelijking van prijzen en functies.