View a markdown version of this page

Usa Microsoft Manifest Generation and Editing Tool (Mage.exe) con AWS CloudHSM per firmare i file - AWS CloudHSM

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Usa Microsoft Manifest Generation and Editing Tool (Mage.exe) con AWS CloudHSM per firmare i file

Nota

AWS CloudHSM supporta solo lo strumento Mage a 64 bit incluso in Windows SDK for .NET Framework 4.8.1 e versioni successive.

I seguenti argomenti forniscono una panoramica sull'utilizzo di. Mage.exe AWS CloudHSM

Fase 1: configurazione dei prerequisiti

Per utilizzare Microsoft Mage.exe con AWS CloudHSM, è necessario quanto segue:

  • Un'istanza Amazon EC2 che esegue un sistema operativo Windows

  • Un'autorità di certificazione (CA), gestita autonomamente o fornita da un fornitore terzo

  • Un AWS CloudHSM cluster attivo nello stesso cloud privato virtuale (VPC) dell'istanza EC2, con almeno un HSM

  • Un utente crittografico (CU) per possedere e gestire le chiavi nel cluster AWS CloudHSM

  • Un file o eseguibile non firmato

  • Il kit di sviluppo software (SDK) per Microsoft Windows

Per configurare i prerequisiti per l'utilizzo AWS CloudHSM con Mage.exe
  1. Avvia un'istanza Windows EC2 e un AWS CloudHSM cluster seguendo le istruzioni nella sezione Getting Started di questa guida.

  2. Se desideri ospitare la tua CA di Windows Server, completa i passaggi 1 e 2 in Configurazione di Windows Server come autorità di certificazione con. AWS CloudHSM Altrimenti, utilizza la tua CA di terze parti pubblicamente attendibile.

  3. Scarica e installa Microsoft Windows SDK for .NET Framework 4.8.1 o versione successiva sulla tua istanza Windows EC2:

    L'mage.exeeseguibile fa parte degli strumenti di Windows SDK. Il percorso di installazione predefinito è:

    C:\Program Files (x86)\Windows Kits\<SDK version>\bin\<version number>\x64\Mage.exe

Dopo aver completato questi passaggi, puoi utilizzare Microsoft Windows SDK, il tuo AWS CloudHSM cluster e la tua CA per creare un certificato di firma.

Fase 2: Creare un certificato di firma

Ora che hai installato Windows SDK sulla tua istanza EC2, puoi utilizzarlo per generare una richiesta di firma del certificato (CSR). Il CSR è un certificato non firmato che invii alla tua CA per la firma. In questo esempio, utilizziamo l'certreqeseguibile incluso in Windows SDK per generare la CSR.

Per generare una CSR utilizzando l'eseguibile certreq
  1. Connect alla tua istanza Windows EC2. Per ulteriori informazioni, consulta Connect to Your Instance nella Amazon EC2 User Guide.

  2. Crea un archivio denominato request.inf con i seguenti contenuti. Sostituisci le Subject informazioni con i dettagli della tua organizzazione:

    [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 = False

    Per una spiegazione di ciascun parametro, consulta la documentazione di Microsoft.

  3. Esegui certreq.exe per generare la CSR:

    certreq.exe -new request.inf request.csr

    Questo comando genera una nuova coppia di chiavi sul AWS CloudHSM cluster e utilizza la chiave privata per creare la CSR.

  4. Invia la CSR alla CA. Se utilizzi una CA di Windows Server, procedi nel seguente modo:

    1. Apri lo strumento CA:

      certsrv.msc
    2. Nella nuova finestra, fare clic con il pulsante destro del mouse sul nome del server CA. Scegliere All tasks (Tutte le attività), quindi scegliere Submit new request (Sottometti nuova richiesta).

    3. Vai alla posizione di request.csr e scegli Apri.

    4. Espandi il menu Server CA e vai alla cartella Richieste in sospeso. Right-click nella richiesta appena creata, scegli Tutte le attività, quindi scegli Emetti.

    5. Vai alla cartella Certificati emessi.

    6. Scegliere Apri per visualizzare il certificato, quindi scegliere la schedaDetails (Dettagli).

    7. Scegliere Copy to File (Copia su File) per avviare la procedura guidata di esportazione dei certificati. Salva il DER-encoded X.509 file in una posizione sicura comesignedCertificate.cer.

    8. Uscire dallo strumento CA ed eseguire il comando seguente per spostare il file del certificato nel Personal Certificate Store in Windows:

      certreq.exe -accept signedCertificate.cer

È ora possibile utilizzare il certificato importato per firmare un file.

Fase 3: Firma un file

Ora che hai Mage.exe importato il certificato, puoi firmare un file. Devi conoscere l' SHA-1 hash o l'impronta digitale del certificato. L'impronta digitale garantisce che vengano utilizzati Mage.exe solo certificati verificati da. AWS CloudHSM In questo esempio, lo usiamo PowerShell per ottenere l'hash del certificato.

Per ottenere l’identificazione personale del certificato e utilizzarlo per firmare un file
  1. Passa alla directory contenentemage.exe. La posizione predefinita è:

    C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8.1 Tools\x64
  2. Per creare un file di applicazione di esempio utilizzando Mage.exe, esegui il seguente comando:

    mage.exe -New Application -ToFile C:\Users\Administrator\Desktop\sample.application
  3. Apri PowerShell come amministratore ed esegui il seguente comando:

    Get-ChildItem -path cert:\LocalMachine\My

    Copia i Provider valori ThumbprintKey Container, e dall'output.

    L'hash del certificato verrà visualizzato come impronta digitale, keycontainer e provider nell'output
  4. Firma il file eseguendo il seguente comando:

    mage.exe -Sign -CertHash <thumbprint> -KeyContainer <keycontainer> -CryptoProvider <CloudHSM Key Storage Provider/Cavium Key Storage Provider> C:\Users\Administrator\Desktop\<sample.application>

    Se il comando ha esito positivo, PowerShell restituisce un messaggio di successo.

  5. Per verificare la firma sul file, utilizzate il seguente comando:

    mage.exe -Verify -CryptoProvider <CloudHSM Key Storage Provider/Cavium Key Storage Provider> C:\Users\Administrator\Desktop\<sample.application>