Lernprogramm: Bereitstellen von HSMs in einem vorhandenen virtuellen Netzwerk mithilfe von PowerShell

Important

Azure Dedicated HSM wird eingestellt. Microsoft wird bestehende dedizierte HSM-Kunden bis zum 31. Juli 2028 vollständig unterstützen. Es werden keine neuen Kunden-Onboardings akzeptiert. Vollständige Details und erforderliche Aktionen finden Sie im offiziellen Azure-Update.

Wenn Sie ein Azure Dedicated HSM-Benutzer sind, finden Sie unter Migration von Azure Dedicated HSM zu Managed HSM oder Azure Cloud HSM. Azure Cloud HSM ist jetzt allgemein verfügbar und der Nachfolger von Azure Dedicated HSM.

Neue Kunden sollten Azure Cloud HSM, Managed HSM oder Azure Key Vault basierend auf ihren Workloadanforderungen bewerten und integrieren. Anleitungen finden Sie unter Auswählen der richtigen Azure Key Management-Lösung.

Der Azure Dedicated HSM Service bietet ein physisches Gerät für die alleinige Kundennutzung mit vollständiger Administrativer Kontrolle und vollständiger Verwaltungsverantwortung. Da der Dienst physische Hardware bereitstellt, steuert Microsoft, wie diese Geräte zugewiesen werden, um eine effektive Kapazitätsverwaltung sicherzustellen. Daher ist der dedizierte HSM-Dienst innerhalb eines Azure-Abonnements für die Ressourcenbereitstellung normalerweise nicht sichtbar. Um auf den dedizierten HSM-Dienst zuzugreifen, müssen Sie sich an Ihren Microsoft-Konto Manager wenden, um die Registrierung für den dedizierten HSM-Dienst anzufordern. Sie können den Dienst erst bereitstellen, nachdem dieser Vorgang erfolgreich abgeschlossen wurde.

Dieses Lernprogramm zielt darauf ab, einen typischen Bereitstellungsprozess zu zeigen, bei dem:

  • Ein Kunde verfügt bereits über ein virtuelles Netzwerk
  • Sie verfügen über eine virtuelle Maschine
  • Sie müssen HSM-Ressourcen zu dieser vorhandenen Umgebung hinzufügen.

Eine typische, hochverfügbare Bereitstellungsarchitektur mit mehreren Regionen ist wie folgt:

Ein Diagramm, das eine Bereitstellung mit mehreren Regionen veranschaulicht.

Dieses Lernprogramm konzentriert sich auf ein Paar von HSMs und das erforderliche ExpressRoute-Gateway (siehe Subnetz 1 oben), das in ein vorhandenes virtuelles Netzwerk integriert wird (siehe VNET 1 oben). Alle anderen Ressourcen sind Standard-Azure-Ressourcen. Derselbe Integrationsprozess kann für HSMs in Subnetz 4 auf VNET 3 oben verwendet werden.

Note

Es wird empfohlen, das Azure Az PowerShell-Modul für die Interaktion mit Azure zu verwenden. Informationen zu den ersten Schritten finden Sie unter Install Azure PowerShell. Informationen zum Migrieren zum Az PowerShell-Modul finden Sie unter Migrieren von Azure PowerShell von AzureRM zum Az-Modul.

Voraussetzungen

Azure Dedicated HSM ist derzeit nicht im Azure-Portal verfügbar, daher erfolgen alle Interaktionen mit dem Dienst über die Befehlszeile oder mit PowerShell. In diesem Lernprogramm wird PowerShell in Azure Cloud Shell verwendet. Sollten Sie noch nicht mit PowerShell vertraut sein, informieren Sie sich hier über die ersten Schritte mit Azure PowerShell.

Voraussetzungen:

  • Ihnen muss ein Microsoft Account Manager zugewiesen sein, damit Sie sich für das Onboarding und die Nutzung von Azure Dedicated HSM qualifizieren.
  • Sie haben den Registrierungsprozess für Azure Dedicated HSM durchlaufen und wurden für die Nutzung des Diensts zugelassen. Falls nicht, wenden Sie sich an Ihren Microsoft-Account-Vertreter für Details.
  • Sie haben eine Ressourcengruppe für diese Ressourcen und für die neuen Ressourcen erstellt, die in diesem Lernprogramm bereitgestellt werden.
  • Sie haben bereits das erforderliche virtuelle Netzwerk, Subnetz und virtuelle Computer erstellt und möchten jetzt 2 HSMs in diese Bereitstellung integrieren.

In den folgenden Anweisungen wird davon ausgegangen, dass Sie sich im Azure Portal befinden und die Cloud Shell geöffnet haben (wählen Sie ">_" oben rechts im Portal aus).

Bereitstellen eines dedizierten HSM

Die Bereitstellung der HSMs und die Integration in ein vorhandenes virtuelles Netzwerk über ExpressRoute-Gateway wird mithilfe des Ssh-Befehlszeilentools überprüft, um die Erreichbarkeit und grundlegende Verfügbarkeit des HSM-Geräts für weitere Konfigurationsaktivitäten sicherzustellen. Die folgenden Befehle verwenden eine Resource Manager Vorlage, um die HSM-Ressourcen und die zugehörigen Netzwerkressourcen zu erstellen.

Überprüfen der Featureregistrierung

Wie bereits erwähnt, erfordert jede Bereitstellungsaktivität, dass der dedizierte HSM-Dienst für Ihr Abonnement registriert ist. Um dies zu überprüfen, führen Sie den folgenden PowerShell-Befehl im Azure Portal Cloud Shell aus.

Get-AzProviderFeature -ProviderNamespace Microsoft.HardwareSecurityModules -FeatureName AzureDedicatedHsm

Der Befehl sollte den Status "Registriert" zurückgeben, bevor Sie fortfahren. Wenn Sie nicht für diesen Dienst registriert sind, wenden Sie sich an Ihren Microsoft-Konto Vertreter.

Abonnementstatus.

Erstellen von HSM-Ressourcen

Ein HSM-Gerät wird im virtuellen Netzwerk eines Kunden bereitgestellt, wofür ein Subnetz erforderlich ist. Eine Abhängigkeit für das HSM, um die Kommunikation zwischen dem virtuellen Netzwerk und dem physischen Gerät zu ermöglichen, ist ein ExpressRoute-Gateway, und schließlich ist ein virtueller Computer erforderlich, um mithilfe der Thales-Clientsoftware auf das HSM-Gerät zuzugreifen.

Sie können eine dedizierte HSM-Ressource mithilfe einer ARM-Vorlage erstellen, die auf dem folgenden Beispiel basiert. Sie müssen die Parameter aktualisieren, indem Sie die Zeilen mit "value":"" durch Ihre bevorzugten Ressourcennamen ersetzen.

  • namingInfix Präfix für Namen von HSM-Ressourcen
  • ExistingVirtualNetworkName Name des virtuellen Netzwerks, das für die HSMs verwendet wird
  • DedicatedHsmResourceName1 Name der HSM-Ressource im Rechenzentrum 1
  • DedicatedHsmResourceName2 Name der HSM-Ressource im Rechenzentrum 2
  • hsmSubnetRange Subnetz-IP-Adressbereich für HSMs
  • ERSubnetRange Subnetz-IP-Adressbereich für VNET-Gateway

Ein Beispiel für diese Änderungen lautet wie folgt:

{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "namingInfix": {
      "value": "MyHSM"
    },
    "ExistingVirtualNetworkName": {
      "value": "MyHSM-vnet"
    },
    "DedicatedHsmResourceName1": {
      "value": "HSM1"
    },
    "DedicatedHsmResourceName2": {
      "value": "HSM2"
    },
    "hsmSubnetRange": {
      "value": "10.0.2.0/24"
    },
    "ERSubnetRange": {
      "value": "10.0.255.0/26"
    },
  }
}

Die zugeordnete Resource Manager Vorlagendatei erstellt sechs Ressourcen mit diesen Informationen:

  • Ein Subnetz für die HSMs im angegebenen VNET
  • Ein Subnetz für das virtuelle Netzwerkgateway
  • Ein virtuelles Netzwerkgateway, das das VNET mit den HSM-Geräten verbindet
  • Eine öffentliche IP-Adresse für das Gateway
  • Ein HSM im Rechenzentrum 1
  • Ein HSM in Stamp 2

Sobald Parameterwerte festgelegt wurden, müssen die Dateien zur Verwendung in die Cloud Shell-Dateifreigabe im Azure-Portal hochgeladen werden. Wählen Sie im Azure Portal das symbol ">_" Cloud Shell oben rechts aus, wodurch der untere Teil des Bildschirms zu einer Befehlsumgebung wird. Die Optionen sind BASH und PowerShell, und Sie sollten BASH auswählen, falls dies nicht bereits eingestellt ist.

Wählen Sie auf der Symbolleiste die Option zum Hochladen/Herunterladen aus, um die Vorlagen- und Parameterdateien in Ihre Dateifreigabe hochzuladen:

Dateifreigabe.

Sobald die Dateien hochgeladen wurden, können Sie Ressourcen erstellen.

Es gibt einige erforderliche Ressourcen, bevor neue HSM-Ressourcen erstellt werden. Sie müssen über ein virtuelles Netzwerk mit Subnetzbereichen für Compute, HSMs und Gateway verfügen. Die folgenden Beispielbefehle zeigen, wie Sie ein solches virtuelles Netzwerk erstellen:

$compute = New-AzVirtualNetworkSubnetConfig `
  -Name compute `
  -AddressPrefix 10.2.0.0/24
$delegation = New-AzDelegation `
  -Name "myDelegation" `
  -ServiceName "Microsoft.HardwareSecurityModules/dedicatedHSMs"

$hsmsubnet = New-AzVirtualNetworkSubnetConfig ` 
  -Name hsmsubnet ` 
  -AddressPrefix 10.2.1.0/24 ` 
  -Delegation $delegation 


$gwsubnet= New-AzVirtualNetworkSubnetConfig `
  -Name GatewaySubnet `
  -AddressPrefix 10.2.255.0/26


New-AzVirtualNetwork `
  -Name myHSM-vnet `
  -ResourceGroupName myRG `
  -Location westus `
  -AddressPrefix 10.2.0.0/16 `
  -Subnet $compute, $hsmsubnet, $gwsubnet

Note

Die wichtigste Konfiguration für das virtuelle Netzwerk ist, dass für das Subnetz des HSM-Geräts Delegierungen auf "Microsoft.HardwareSecurityModules/dedicatedHSMs" festgelegt sein müssen. Andernfalls funktioniert die HSM-Bereitstellung nicht.

Sobald alle Voraussetzungen vorhanden sind und die Resource Manager Vorlage mit Ihren eindeutigen Namen (mindestens der Ressourcengruppenname) aktualisiert wurde, führen Sie den folgenden Befehl aus:


New-AzResourceGroupDeployment -ResourceGroupName myRG `
     -TemplateFile .\Deploy-2HSM-toVNET-Template.json `
     -TemplateParameterFile .\Deploy-2HSM-toVNET-Params.json `
     -Name HSMdeploy -Verbose

Dieser Befehl sollte ungefähr 20 Minuten dauern. Die verwendete Option "-verbose" stellt sicher, dass der Status kontinuierlich angezeigt wird.

Bereitstellung eines dedizierten HSMs.

Wenn der Vorgang erfolgreich abgeschlossen wurde, was durch "provisioningState": "Succeeded" angezeigt wird, können Sie sich bei Ihrem vorhandenen virtuellen Computer anmelden und SSH verwenden, um die Verfügbarkeit des HSM-Geräts sicherzustellen.

Überprüfen der Bereitstellung

Führen Sie den folgenden Befehlssatz aus, um zu überprüfen, ob die Geräte provisioniert wurden und die Geräteattribute anzuzeigen. Stellen Sie sicher, dass die Ressourcengruppe entsprechend festgelegt ist und der Ressourcenname genau wie in der Parameterdatei angegeben lautet.


$subid = (Get-AzContext).Subscription.Id
$resourceGroupName = "myRG"
$resourceName = "HSM1"  
Get-AzResource -Resourceid /subscriptions/$subId/resourceGroups/$resourceGroupName/providers/Microsoft.HardwareSecurityModules/dedicatedHSMs/$resourceName

Bereitstellungsstatus.

Sie können nun auch die Ressourcen mithilfe des Azure Ressourcen-Explorers anzeigen. Erweitern Sie im Explorer links „subscriptions“, erweitern Sie Ihr spezifisches Abonnement für Dedicated HSM, erweitern Sie „Ressourcengruppen“, erweitern Sie die verwendete Ressourcengruppe, und wählen Sie schließlich das Element „Ressourcen“ aus.

Testen der Bereitstellung

Das Testen der Bereitstellung besteht darin, eine Verbindung mit einem virtuellen Computer herzustellen, der auf die HSMs zugreifen kann, und dann direkt eine Verbindung mit dem HSM-Gerät herzustellen. Diese Aktionen bestätigen, dass das HSM erreichbar ist. Das SSH-Tool wird verwendet, um eine Verbindung mit dem virtuellen Computer herzustellen. Der Befehl ähnelt dem folgenden, aber mit dem Administratornamen und dem DNS-Namen, den Sie im Parameter angegeben haben.

ssh adminuser@hsmlinuxvm.westus.cloudapp.azure.com

Das zu verwendende Kennwort ist das Kennwort aus der Parameterdatei. Sobald Sie bei der Linux-VM angemeldet sind, können Sie sich mithilfe der privaten IP-Adresse beim HSM anmelden, die Sie im Portal für die Ressource <prefix>hsm_vnic finden.


(Get-AzResource -ResourceGroupName myRG -Name HSMdeploy -ExpandProperties).Properties.networkProfile.networkInterfaces.privateIpAddress

Wenn Sie über die IP-Adresse verfügen, führen Sie den folgenden Befehl aus:

ssh tenantadmin@<ip address of HSM>

Bei erfolgreicher Ausführung werden Sie aufgefordert, ein Kennwort einzugeben. Das Standardkennwort ist PASSWORD. Das HSM fordert Sie auf, Ihr Kennwort zu ändern. Legen Sie daher ein sicheres Kennwort fest und verwenden Sie den Mechanismus, den Ihre Organisation zum Speichern des Kennworts und zum Verhindern von Verlust bevorzugt.

Important

Wenn Sie dieses Kennwort verlieren, muss das HSM zurückgesetzt werden, was bedeutet, dass Ihre Schlüssel verloren gehen.

Wenn Sie mit ssh mit dem HSM-Gerät verbunden sind, führen Sie den folgenden Befehl aus, um sicherzustellen, dass das HSM betriebsbereit ist.

hsm show

Die Ausgabe sollte wie die folgende Abbildung aussehen:

Screenshot der Ausgabe des HSM-Show-Befehls.

Zu diesem Zeitpunkt haben Sie alle Ressourcen für eine hoch verfügbare Bereitstellung mit zwei HSMs zugeordnet und den Zugriff sowie den Betriebszustand validiert. Jede weitere Konfiguration oder Prüfung erfordert mehr Arbeit mit dem HSM-Gerät selbst. Hierfür sollten Sie die Anweisungen im Kapitel 7 des Thales Luna 7 HSM Administration Guide befolgen, um das HSM zu initialisieren und Partitionen zu erstellen. Alle Dokumentationen und Software stehen direkt von Thales zum Download zur Verfügung, sobald Sie im Thales-Kundensupportportal registriert sind und über eine Kunden-ID verfügen. Laden Sie Clientsoftware, Version 7.2, herunter, um alle erforderlichen Komponenten abzurufen.

Ressourcen löschen oder bereinigen

Wenn Sie nur mit dem HSM-Gerät fertig sind, kann es als Ressource gelöscht und an den kostenlosen Pool zurückgegeben werden. Die offensichtliche Sorge bei dieser Vorgehensweise sind alle vertraulichen Kundendaten, die sich auf dem Gerät befinden. Die beste Möglichkeit, ein Gerät „auf Null zu setzen“, besteht darin, das HSM-Administratorkennwort dreimal falsch einzugeben (Hinweis: Dies ist nicht das Appliance-Admin-Kennwort, sondern das eigentliche HSM-Administratorkennwort). Als Sicherheitsmaßnahme zum Schutz des Schlüsselmaterials kann das Gerät erst als Azure Ressource gelöscht werden, wenn es sich im nullisierten Zustand befindet.

Note

Wenn Sie Probleme mit einer Thales-Gerätekonfiguration haben, sollten Sie sich an den Kundensupport von Thales wenden.

Wenn Sie die HSM-Ressource in Azure entfernen möchten, können Sie den folgenden Befehl verwenden und dabei die "$"-Variablen durch Ihre eindeutigen Parameter ersetzen:


$subid = (Get-AzContext).Subscription.Id
$resourceGroupName = "myRG" 
$resourceName = "HSMdeploy"  
Remove-AzResource -Resourceid /subscriptions/$subId/resourceGroups/$resourceGroupName/providers/Microsoft.HardwareSecurityModules/dedicatedHSMs/$resourceName 

Nächste Schritte

Nach Abschluss der Schritte im Lernprogramm werden dedizierte HSM-Ressourcen bereitgestellt und sind in Ihrem virtuellen Netzwerk verfügbar. Sie sind jetzt in der Lage, diese Bereitstellung mit mehr Ressourcen zu ergänzen, gemäß Ihrer bevorzugten Bereitstellungsarchitektur. Weitere Informationen zum Planen Ihrer Bereitstellung finden Sie in den Konzeptdokumenten. Ein Design mit zwei HSMs in einer primären Region, die die Verfügbarkeit auf Rackebene anspricht, und zwei HSMs in einer sekundären Region, die die regionale Verfügbarkeit adressiert, wird empfohlen. Die Vorlagendatei aus diesem Tutorial kann problemlos als Grundlage für eine Bereitstellung mit zwei HSMs verwendet werden. Dabei müssen allerdings die Parameter an Ihre individuellen Anforderungen angepasst werden.