Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Verwenden Sie das Microsoft-Manifest-Generierungs- und Bearbeitungstool (Mage.exe) mit AWS CloudHSM um Dateien zu signieren
Anmerkung
AWS CloudHSM unterstützt nur das 64-Bit-Mage-Tool, das im Windows SDK for .NET Framework 4.8.1 und höher enthalten ist.
Die folgenden Themen bieten einen Überblick über die Verwendung Mage.exe
Themen
Schritt 1: Einrichten der Voraussetzungen
Um Microsoft Mage.exe mit verwenden zu können AWS CloudHSM, benötigen Sie Folgendes:
-
Eine Amazon EC2 EC2-Instance, auf der ein Windows-Betriebssystem ausgeführt wird
-
Eine Zertifizierungsstelle (CA), entweder selbst verwaltet oder von einem Drittanbieter
-
Ein aktiver AWS CloudHSM Cluster in derselben Virtual Private Cloud (VPC) wie Ihre EC2-Instance, mit mindestens einem HSM
-
Ein Krypto-Benutzer (CU), der Schlüssel im Cluster besitzt und verwaltet AWS CloudHSM
-
Eine unsignierte Datei oder eine ausführbare Datei
-
Das Microsoft Windows Software Development Kit (SDK)
Um die Voraussetzungen für die Verwendung von einzurichten AWS CloudHSM mit Mage.exe
-
Starten Sie eine Windows EC2-Instance und einen AWS CloudHSM Cluster, indem Sie den Anweisungen im Abschnitt Erste Schritte dieses Handbuchs folgen.
-
Wenn Sie Ihre eigene Windows Server-Zertifizierungsstelle hosten möchten, führen Sie die Schritte 1 und 2 unter Konfiguration von Windows Server als Zertifizierungsstelle mit AWS CloudHSM aus. Verwenden Sie andernfalls Ihre öffentlich vertrauenswürdige Drittanbieter-Zertifizierungsstelle.
-
Laden Sie das Microsoft Windows SDK for .NET Framework 4.8.1 oder höher herunter und installieren Sie es auf Ihrer Windows EC2-Instance:
Die
mage.exeausführbare Datei ist Teil der Windows SDK-Tools. Der Standardinstallationspfad ist:C:\Program Files (x86)\Windows Kits\<SDK version>\bin\<version number>\x64\Mage.exe
Nachdem Sie diese Schritte abgeschlossen haben, können Sie das Microsoft Windows SDK, Ihren AWS CloudHSM Cluster und Ihre CA verwenden, um ein Signaturzertifikat zu erstellen.
Schritt 2: Erstellen Sie ein Signaturzertifikat
Nachdem Sie das Windows SDK nun auf Ihrer EC2-Instance installiert haben, können Sie es verwenden, um eine Certificate Signing Request (CSR) zu generieren. Die CSR ist ein unsigniertes Zertifikat, das Sie Ihrer Zertifizierungsstelle zur Unterzeichnung vorlegen. In diesem Beispiel verwenden wir die im Windows SDK enthaltene certreq ausführbare Datei, um die CSR zu generieren.
Um eine CSR mit der ausführbaren Datei certreq zu generieren
-
Connect zu Ihrer Windows EC2-Instance her. Weitere Informationen finden Sie unter Connect to Your Instance im Amazon EC2 EC2-Benutzerhandbuch.
-
Erstellen Sie eine Datei mit dem Namen
request.infund dem folgenden Inhalt. Ersetzen Sie dieSubjectInformationen durch die Details Ihrer Organisation:[Version] Signature= $Windows NT$ [NewRequest] Subject = "C=<Country>,CN=<www.website.com>,O=<Organization>,OU=<Organizational-Unit>,L=<City>,S=<State>" RequestType=PKCS10 HashAlgorithm = SHA256 KeyAlgorithm = RSA KeyLength = 2048 ProviderName = "CloudHSM Key Storage Provider" KeyUsage = "CERT_DIGITAL_SIGNATURE_KEY_USAGE" MachineKeySet = True Exportable = FalseEine Erklärung der einzelnen Parameter finden Sie in der Dokumentation von Microsoft
. -
Führen Sie
certreq.exedas Programm aus, um die CSR zu generieren:certreq.exe -new request.inf request.csrDieser Befehl generiert ein neues key pair in Ihrem AWS CloudHSM Cluster und verwendet den privaten Schlüssel, um die CSR zu erstellen.
-
Übermitteln Sie die CSR an Ihre CA. Wenn Sie eine Windows Server-Zertifizierungsstelle verwenden, gehen Sie wie folgt vor:
-
Öffnen Sie das CA-Tool:
certsrv.msc -
Klicken Sie im neuen Fenster mit der rechten Maustaste auf den Namen des CA-Servers. Wählen Sie Alle Aufgaben aus, und wählen Sie dann Neue Anfrage senden aus.
-
Navigieren Sie zum Speicherort von
request.csrund wählen Sie Öffnen. -
Erweitern Sie das Menü Server CA und navigieren Sie zum Ordner Pending Requests. Right-click Wählen Sie für die Anfrage, die Sie gerade erstellt haben, Alle Aufgaben und anschließend Issue aus.
-
Navigieren Sie zum Ordner „Ausgestellte Zertifikate“.
-
Wählen Sie Öffnen aus, um das Zertifikat anzuzeigen, und wählen Sie dann die Registerkarte Details aus.
-
Wählen Sie In Datei kopieren aus, um den Assistenten für den Zertifikatsexport zu starten. Speichern Sie die DER-encoded X.509 Datei an einem sicheren Ort unter
signedCertificate.cer. -
Beenden Sie das CA-Tool und führen Sie den folgenden Befehl aus, um die Zertifikatsdatei in den Personal Certificate Store in Windows zu verschieben:
certreq.exe -accept signedCertificate.cer
-
Sie können jetzt Ihr importiertes Zertifikat verwenden, um eine Datei zu signieren.
Schritt 3: Signieren Sie eine Datei
Nachdem Sie Ihr importiertes Zertifikat haben Mage.exe , können Sie eine Datei signieren. Sie müssen den SHA-1 Hash oder Fingerabdruck des Zertifikats kennen. Der Fingerabdruck stellt sicher, dass Mage.exe nur Zertifikate verwendet werden, die von verifiziert wurden. AWS CloudHSM In diesem Beispiel verwenden wir, PowerShell um den Hash des Zertifikats abzurufen.
So erhalten Sie den Fingerabdruck eines Zertifikats und signieren damit eine Datei:
-
Navigieren Sie zu dem Verzeichnis, das enthält
mage.exe. Der Standardspeicherort ist:C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8.1 Tools\x64 -
Führen Sie den folgenden Befehl aus Mage.exe, um eine Beispielanwendungsdatei mit zu erstellen:
mage.exe -New Application -ToFile C:\Users\Administrator\Desktop\sample.application -
Öffnen Sie PowerShell als Administrator und führen Sie den folgenden Befehl aus:
Get-ChildItem -path cert:\LocalMachine\MyKopieren Sie die
ProviderWerteThumbprintKey Container, und aus der Ausgabe.
-
Signieren Sie Ihre Datei, indem Sie den folgenden Befehl ausführen:
mage.exe -Sign -CertHash<thumbprint>-KeyContainer<keycontainer>-CryptoProvider<CloudHSM Key Storage Provider/Cavium Key Storage Provider>C:\Users\Administrator\Desktop\<sample.application>Wenn der Befehl erfolgreich ist, wird eine Erfolgsmeldung PowerShell zurückgegeben.
-
Verwenden Sie den folgenden Befehl, um die Signatur der Datei zu überprüfen:
mage.exe -Verify -CryptoProvider<CloudHSM Key Storage Provider/Cavium Key Storage Provider>C:\Users\Administrator\Desktop\<sample.application>