Importieren von durch HSM geschützten Schlüsseln in verwaltetes HSM (BYOK)
Das verwaltete HSM von Azure Key Vault unterstützt den Import von Schlüsseln, die in Ihrem lokalen Hardwaresicherheitsmodul (HSM) generiert wurden. Die Schlüssel verlassen nie die HSM-Schutzgrenze. Dieses Szenario wird häufig als Bring Your Own Key (BYOK) bezeichnet. Das verwaltete HSM verwendet die HSM-Adapter von Marvell LiquidSecurity (validiert für FIPS 140-2 Level 3) zum Schützen der Schlüssel.
Verwenden Sie die Informationen in diesem Artikel zum Planen, Generieren und Übertragen Ihrer eigenen durch HSM geschützten Schlüssel für die Nutzung mit verwaltetem HSM.
Hinweis
Diese Funktionalität ist für Microsoft Azure des Betreibers 21Vianet nicht verfügbar. Diese Importmethode ist nur für unterstützte HSMs verfügbar.
Weitere Informationen und ein Tutorial zu den ersten Schritten mit verwaltetem HSM finden Sie unter Was ist verwaltetes HSM?.
Übersicht
Im Folgenden finden Sie eine Übersicht über den Prozess. Einige der Schritte, die Sie ausführen müssen, werden weiter unten in diesem Artikel beschrieben.
- Generieren Sie in verwaltetem HSM einen Schlüssel (als Schlüsselaustauschschlüssel (Key Exchange Key, KEK) bezeichnet). Der KEK muss ein RSA-HSM-Schlüssel sein, der nur den Schlüsselvorgang
import
umfasst. - Laden Sie den öffentlichen Schlüssel des KEK als PEM-Datei herunter.
- Übertragen Sie den öffentlichen Schlüssel des KEK auf einen Offlinecomputer, der mit einem lokalen HSM verbunden ist.
- Verwenden Sie auf dem Offlinecomputer das von Ihrem HSM-Anbieter bereitgestellte BYOK-Tool, um eine BYOK-Datei zu erstellen.
- Der Zielschlüssel wird mit einem KEK verschlüsselt. Die Verschlüsselung bleibt bis zur Übertragung an das verwaltete HSM bestehen. Nur die verschlüsselte Version Ihres Schlüssels verlässt das lokale HSM.
- Ein KEK, der innerhalb eines verwalteten HSM generiert wurde, kann nicht exportiert werden. HSMs erzwingen die Regel, dass keine unverschlüsselte Version eines KEK außerhalb eines verwalteten HSMs vorhanden sein darf.
- Der KEK muss sich in demselben verwalteten HSM befinden, in das der Zielschlüssel importiert werden soll.
- Wenn die BYOK-Datei in das verwaltete HSM hochgeladen wird, verwendet ein verwaltetes HSM den privaten Schlüssel des KEK, um das Zielschlüsselmaterial zu entschlüsseln und als HSM-Schlüssel zu importieren. Dieser Vorgang erfolgt vollständig innerhalb des HSM. Der Zielschlüssel verbleibt stets in den Schutzgrenzen des HSM.
Voraussetzungen
Für die Verwendung der Azure CLI-Befehle in diesem Artikel benötigen Sie Folgendes:
- Ein Abonnement für Microsoft Azure. Falls Sie über kein Azure-Abonnement verfügen, können Sie sich für eine kostenlose Testversion registrieren.
- Azure-Befehlszeilenschnittstelle ab Version 2.12.0. Führen Sie
az --version
aus, um die Version zu ermitteln. Installations- und Upgradeinformationen finden Sie bei Bedarf unter Installieren von Azure CLI. - Ein verwaltetes HSM, die unterstützte HSMs-Liste in Ihrem Abonnement. Weitere Informationen finden Sie unter Schnellstart: Bereitstellen und Aktivieren eines verwalteten HSM mithilfe der Azure-Befehlszeilenschnittstelle. Dort erfahren Sie, wie Sie ein verwaltetes HSM bereitstellen und aktivieren.
Azure Cloud Shell
Azure hostet Azure Cloud Shell, eine interaktive Shell-Umgebung, die Sie über Ihren Browser nutzen können. Sie können entweder Bash oder PowerShell mit Cloud Shell verwenden, um mit Azure-Diensten zu arbeiten. Sie können die vorinstallierten Befehle von Cloud Shell verwenden, um den Code in diesem Artikel auszuführen, ohne etwas in Ihrer lokalen Umgebung installieren zu müssen.
Starten von Azure Cloud Shell:
Option | Beispiel/Link |
---|---|
Wählen Sie rechts oben in einem Code- oder Befehlsblock die Option Ausprobieren aus. Durch die Auswahl von Ausprobieren wird der Code oder Befehl nicht automatisch in Cloud Shell kopiert. | |
Rufen Sie https://shell.azure.com auf, oder klicken Sie auf die Schaltfläche Cloud Shell starten, um Cloud Shell im Browser zu öffnen. | |
Wählen Sie im Azure-Portal rechts oben im Menü die Schaltfläche Cloud Shell aus. |
So verwenden Sie Azure Cloud Shell:
Starten Sie Cloud Shell.
Wählen Sie die Schaltfläche Kopieren für einen Codeblock (oder Befehlsblock) aus, um den Code oder Befehl zu kopieren.
Fügen Sie den Code oder Befehl mit STRG+UMSCHALT+V unter Windows und Linux oder CMD+UMSCHALT+V unter macOS in die Cloud Shell-Sitzung ein.
Drücken Sie die EINGABETASTE, um den Code oder Befehl auszuführen.
Geben Sie zur Anmeldung bei Azure über die CLI Folgendes ein:
az login
Weitere Informationen zu den Anmeldeoptionen über die CLI finden Sie unter Anmelden mit der Azure CLI.
Unterstützte HSMs
Herstellername | Herstellertyp | Unterstützte HSM-Modelle | Weitere Informationen |
---|---|---|---|
Cryptomathic | ISV (Enterprise Key Management System) | Mehrere HSM-Marken und -Modelle, einschließlich
|
|
Entrust | Hersteller, HSM als Dienst |
|
nCipher – Neues BYOK-Tool und -Dokumentation |
Fortanix | Hersteller, HSM als Dienst |
|
Exportieren von SDKMS-Schlüsseln nach Cloudanbietern für BYOK – Azure Key Vault |
IBM | Hersteller | IBM 476x, CryptoExpress | IBM Enterprise Key Management Foundation |
Marvell | Hersteller | Alle Liquid Security-HSMs mit
|
Marvell – BYOK-Tool und -Dokumentation |
Securosys SA | Hersteller, HSM-as-a-Service | Primus-HSM-Familie, Securosys Clouds HSM | Primus – BYOK-Tool und -Dokumentation |
StorMagic | ISV (Enterprise Key Management System) | Mehrere HSM-Marken und -Modelle, einschließlich
|
SvKMS und Azure Key Vault BYOK |
Thales | Hersteller |
|
Luna – BYOK-Tool und -Dokumentation |
Utimaco | Hersteller, HSM als Dienst |
u.trust Anchor, CryptoServer | Utimaco-BYOK-Tool und Integrationshandbuch |
Unterstützte Schlüsseltypen
Schlüsselname | Schlüsseltyp | Schlüsselgröße/Kurve | Origin | BESCHREIBUNG |
---|---|---|---|---|
Schlüsselaustauschschlüssel (Key Exchange Key, KEK) | RSA-HSM | 2\.048 Bit 3\.072 Bit 4\.096 Bit |
Verwaltetes HSM | Dies ist ein durch HSM gestütztes RSA-Schlüsselpaar, das im verwalteten HSM generiert wurde. |
Zielschlüssel | ||||
RSA-HSM | 2\.048 Bit 3\.072 Bit 4\.096 Bit |
Anbieter-HSM | Der an das verwaltete HSM zu übertragende Schlüssel | |
EC-HSM | P-256 P-384 P-521 |
Anbieter-HSM | Der an das verwaltete HSM zu übertragende Schlüssel | |
Symmetrischer Schlüssel (oct-hsm) | 128 Bit 192 Bit 256 Bit |
Anbieter-HSM | Der an das verwaltete HSM zu übertragende Schlüssel | |
Generieren und Übertragen des Schlüssels an das verwaltete HSM
Schritt 1: Generieren eines KEK
Ein KEK ist ein RSA-Schlüssel, der in einem verwalteten HSM generiert wird. Der KEK wird zum Verschlüsseln des Schlüssels verwendet, den Sie importieren möchten (Zielschlüssel).
Für den KEK gilt Folgendes:
- Es muss sich um einen RSA-HSM-Schlüssel handeln (2.048 Bit, 3.072 Bit oder 4.096 Bit).
- Er muss im selben verwalteten HSM generiert werden, in das Sie den Zielschlüssel importieren möchten.
- Die zulässigen Schlüsselvorgänge müssen auf
import
festgelegt sein.
Hinweis
Der KEK muss als einzigen zulässigen Schlüsselvorgang „import“ aufweisen. „import“ schließt sich mit allen anderen wichtigen Vorgängen gegenseitig aus.
Verwenden Sie den Befehl az keyvault key create, um den KEK mit auf import
festgelegten Schlüsselvorgängen zu erstellen. Notieren Sie die Schlüssel-ID (kid
), die vom folgenden Befehl zurückgegeben wird. (Sie verwenden den kid
-Wert in Schritt 3.)
az keyvault key create --kty RSA-HSM --size 4096 --name KEKforBYOK --ops import --hsm-name ContosoKeyVaultHSM
Schritt 2: Herunterladen des öffentlichen Schlüssels des KEK
Verwenden Sie den Befehl az keyvault key download, um den öffentlichen Schlüssel des KEK in eine PEM-Datei herunterzuladen. Der importierte Zielschlüssel ist mit dem öffentlichen Schlüssel des KEK verschlüsselt.
az keyvault key download --name KEKforBYOK --hsm-name ContosoKeyVaultHSM --file KEKforBYOK.publickey.pem
Übertragen Sie die Datei „KEKforBYOK.publickey.pem“ an Ihren Offlinecomputer. Sie benötigen diese Datei im nächsten Schritt.
Schritt 3: Generieren des Schlüssels und Vorbereiten für die Übertragung
Informieren Sie sich in der Dokumentation Ihres HSM-Anbieters darüber, wie Sie das BYOK-Tool herunterladen und installieren. Befolgen Sie die Anweisungen des HSM-Anbieters, um einen Zielschlüssel zu generieren und dann eine Schlüsselübertragungsdatei (BYOK-Datei) zu erstellen. Das BYOK-Tool verwendet den kid
aus Schritt 1 und die Datei „KEKforBYOK.publickey.pem“, die Sie in Schritt 2 heruntergeladen haben, um einen verschlüsselten Zielschlüssel in einer BYOK-Datei zu generieren.
Übertragen Sie die BYOK-Datei an Ihren verbundenen Computer.
Hinweis
Das Importieren von RSA-Schlüsseln mit 1.024 Bit wird nicht unterstützt. Der Import von EC-HSM P256K-Schlüsseln wird unterstützt.
Bekanntes Problem: Das Importieren eines RSA 4K-Zielschlüssels von Luna HSMs wird nur mit Firmware 7.4.0 oder höher unterstützt.
Schritt 4: Übertragen Ihres Schlüssels an das verwaltete HSM
Um den Schlüsselimport abzuschließen, übertragen Sie das Schlüsselübertragungspaket (BYOK-Datei) von Ihrem nicht verbundenen Computer an den mit dem Internet verbundenen Computer. Verwenden Sie den Befehl az keyvault key import, um die BYOK-Datei in das verwaltete HSM hochzuladen.
az keyvault key import --hsm-name ContosoKeyVaultHSM --name ContosoFirstHSMkey --byok-file KeyTransferPackage-ContosoFirstHSMkey.byok
Wenn der Upload erfolgreich ist, werden die Eigenschaften des importierten Schlüssels in der Azure-Befehlszeilenschnittstelle angezeigt.
Nächste Schritte
Sie können diesen HSM-geschützten Schlüssel jetzt in Ihrem verwalteten HSM verwenden. Weitere Informationen finden Sie in dieser Gegenüberstellung von Preisen und Funktionen.