As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Use a Ferramenta de Geração e Edição de Manifestos da Microsoft (Mage.exe) com AWS CloudHSM para assinar arquivos
nota
AWS CloudHSM suporta somente a ferramenta Mage de 64 bits incluída no SDK do Windows para .NET Framework 4.8.1 e versões posteriores.
Os tópicos a seguir fornecem uma visão geral de como usar o Mage.exe
Tópicos
Etapa 1: configurar os pré-requisitos
Para usar o Microsoft Mage.exe com AWS CloudHSM, você precisa do seguinte:
-
Uma EC2 instância da Amazon executando um sistema operacional Windows
-
Uma autoridade de certificação (CA), auto-mantida ou estabelecida por um provedor terceirizado
-
Um AWS CloudHSM cluster ativo na mesma nuvem privada virtual (VPC) da sua EC2 instância, com pelo menos um HSM
-
Um usuário criptográfico (UC) para possuir e gerenciar chaves no cluster AWS CloudHSM
-
Um arquivo não assinado ou executável
-
O Kit de desenvolvimento de software (SDK) do Microsoft Windows
Para configurar os pré-requisitos para uso com o Mage.exe AWS CloudHSM
-
Execute uma EC2 instância do Windows e um AWS CloudHSM cluster seguindo as instruções na seção Introdução deste guia.
-
Se você quiser hospedar sua própria CA do Windows Server, conclua as etapas 1 e 2 em Configurando o Windows Server como uma autoridade de certificação com AWS CloudHSM. Caso contrário, use a sua CA terceirizada confiável publicamente.
-
Baixe e instale o SDK do Microsoft Windows para .NET Framework 4.8.1 ou posterior em sua EC2 instância do Windows:
O executável
mage.exefaz parte das ferramentas do SDK do Windows. O local de instalação padrão é:C:\Program Files (x86)\Windows Kits\<SDK version>\bin\<version number>\x64\Mage.exe
Depois de concluir essas etapas, você pode usar o SDK do Microsoft Windows, seu AWS CloudHSM cluster e sua CA para criar um certificado de assinatura.
Etapa 2: criar um certificado de assinatura
Agora que você instalou o SDK do Windows na sua EC2 instância, pode usá-lo para gerar uma solicitação de assinatura de certificado (CSR). A CSR é um certificado não assinado que você envia para a CA para assinatura. Neste exemplo, usamos o executável certreq incluído com o SDK do Windows para gerar a CSR.
Para gerar uma CSR usando o executável certreq
-
Conecte-se à sua EC2 instância do Windows. Para obter mais informações, consulte Connect to Your Instance no Guia EC2 do usuário da Amazon.
-
Crie um arquivo chamado
request.infcom o conteúdo a seguir. Substitua as informações deSubjectpelos detalhes da sua organização:[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 = FalsePara obter uma explicação de cada parâmetro, consulte a Documentação da Microsoft
. -
Execute
certreq.exepara gerar a CSR:certreq.exe -new request.inf request.csrEsse comando gera um novo par de chaves em seu AWS CloudHSM cluster e usa a chave privada para criar a CSR.
-
Envie a CSR à sua CA. Se estiver usando uma CA do Windows Server, siga estas etapas:
-
Abra a ferramenta de CA:
certsrv.msc -
Na nova janela, clique com o botão direito do mouse no nome do servidor da CA. Escolha All Tasks (Todas as tarefas) e depois escolha Submit new request (Enviar nova solicitação).
-
Navegue até o local de
request.csre escolha Abrir. -
Navegue até a pasta Solicitações pendentes expandindo o menu CA do servidor. Clique com o botão direito do mouse na solicitação que você acabou de criar e, em Todas as tarefas, escolha Problema.
-
Acesse a pasta Certificados emitidos.
-
Escolha Open (Abrir) para visualizar o certificado e depois escolha a guia Details (Detalhes).
-
Escolha Copy to File (Copiar no arquivo) para iniciar o Certificate Export Wizard (Assistente de exportação da CA). Salve o arquivo X.509 codificado por DER em um local seguro como
signedCertificate.cer. -
Saia da ferramenta de CA e execute o comando a seguir para mover o arquivo do certificado para o armazenamento de certificados pessoais no Windows.
certreq.exe -accept signedCertificate.cer
-
Agora, você pode usar o certificado importado para assinar um arquivo.
Etapa 3: assinar um arquivo
Agora que tem a Mage.exe e seu certificado importado, você pode assinar um arquivo. Você precisa saber o hash SHA-1 do certificado ou a impressão digital. A impressão digital garante que a Mage.exe use apenas certificados verificados por AWS CloudHSM. Neste exemplo, usamos PowerShell para obter o hash do certificado.
Para obter uma impressão digital do certificado e usá-lo para assinar um arquivo
-
Acesse o diretório que contém
mage.exe. O local padrão é:C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8.1 Tools\x64 -
Para criar um arquivo de aplicação de amostra usando Mage.exe, execute o seguinte comando:
mage.exe -New Application -ToFile C:\Users\Administrator\Desktop\sample.application -
Abra PowerShell como administrador e execute o seguinte comando:
Get-ChildItem -path cert:\LocalMachine\MyCopie os valores
Thumbprint,Key ContainereProviderdo resultado.
-
Assine seu arquivo executando o seguinte comando:
mage.exe -Sign -CertHash<thumbprint>-KeyContainer<keycontainer>-CryptoProvider<CloudHSM Key Storage Provider/Cavium Key Storage Provider>C:\Users\Administrator\Desktop\<sample.application>Se o comando for bem-sucedido, PowerShell retornará uma mensagem de sucesso.
-
Para verificar a assinatura no arquivo, use o seguinte comando:
mage.exe -Verify -CryptoProvider<CloudHSM Key Storage Provider/Cavium Key Storage Provider>C:\Users\Administrator\Desktop\<sample.application>