Este tutorial mostrará como assinar arquivos a partir da linha de comando do Windows com um certificado de assinatura de código e chave privada armazenados no Azure Key Vault. Para seguir essas instruções, você precisará de:
- An Conta Azure
- A Cofre de Chaves
- A certificado de assinatura de código instalado em seu Key Vault. Você também pode:
- Ferramenta de assinatura do Azure instalado no computador que você usará para assinar
O que é a Azure Sign Tool?
Ferramenta de assinatura do Azure é um utilitário de código aberto que oferece Ferramenta de sinalização funcionalidade para certificados e chaves armazenados no Azure Key Vault. Você pode instalar a Azure Sign Tool com o seguinte comando no Windows PowerShell (requer SDK do .NET):
dotnet tool install --global AzureSignTool
Etapa 1: registrar um novo aplicativo do Azure
Primeiro, você precisará registrar um novo aplicativo do Azure para que possa se conectar ao Key Vault para assinatura.
- Faça login no Portal do Azure.
- Acessar Azure Active Directory. (Clique Mais serviços se o ícone do Azure Active Directory não estiver visível.)
- Clique Registros de aplicativos, na coluna da esquerda.
- Clique Novo registro.
- Dê ao seu aplicativo um Nome E clique no Inscrições botão. Deixe as outras configurações com seus valores padrão.
- Seu novo aplicativo foi registrado. Copie e salve o valor mostrado para ID do aplicativo (cliente), porque você precisará dele mais tarde.
- Clique Autenticação.
- Debaixo Configurações avançadasconjunto Permitir fluxos de clientes públicos para
Yes
.
- Clique Economize.
Etapa 2: Criar um segredo do cliente
Em seguida, gere um segredo de cliente, que servirá como uma credencial ao assinar.
- Clique Certificados e segredos no menu à esquerda.
- Clique Novo segredo do cliente.
- Dê um segredo ao seu cliente Descrição, defina a validade conforme desejado e clique no Adicionar botão.
- Copie o Valor do seu novo segredo de cliente imediatamente e guarde-o em um local seguro. Na próxima vez que a página for atualizada, este valor será mascarado e irrecuperável.
Etapa 3: ativar o acesso no Key Vault
Agora, você precisará habilitar o acesso para seu aplicativo no Azure Key Vault.
- Navegue até o Key Vault que contém o certificado que deseja usar para assinar e clique no botão Políticas de acesso link.
- Clique Adicionar política de acesso.
- Debaixo Permissões-chave, habilitar
Sign
.
- Debaixo Permissões de certificado, habilitar
Get
.
- Clique na Nenhum selecionado link, sob Selecione o principale, em seguida, use o campo de pesquisa para localizar e selecionar o aplicativo criado na seção anterior.
- Clique na Selecionar botão.
- Clique na Adicionar botão.
- Clique Economize.
- Sua política de acesso está definida e você está pronto para começar a assinar arquivos.
Etapa 4: assinar um arquivo
Agora você está finalmente pronto para assinar algum código!
- Você precisará das seguintes informações disponíveis:
- Abaixo está um exemplo de comando no PowerShell para assinar e marcar a data e hora de um arquivo com a ferramenta de assinatura do Azure. Substitua os valores em MAIÚSCULAS pelas suas informações reais:
azuresigntool sign -kvu KEY-VAULT-URI -kvc CERTIFICADO-NOME -kvi APPLICATION-CLIENT-ID -kvs CLIENT-SECRET -tr http://ts.ssl.com/ -td sha256 PATH-TO-EXECUTABLE
Nota: Por padrão, SSL.com oferece suporte a registros de data e hora de chaves ECDSA.
Se você encontrar este erro:The timestamp certificate does not meet a minimum public key length requirement
, você deve entrar em contato com o fornecedor do software para permitir registros de data e hora das chaves ECDSA.
Se não houver como seu fornecedor de software permitir o uso do endpoint normal, você poderá usar esse endpoint legadohttp://ts.ssl.com/legacy
para obter um registro de data e hora de uma unidade de registro de data e hora RSA. - Se a assinatura for bem-sucedida, você verá uma saída como a seguinte (a assinatura malsucedida não produzirá nenhuma saída):
info: AzureSignTool.Program [0] => Arquivo: test.exe Arquivo de assinatura test.exe info: AzureSignTool.Program [0] => Arquivo: test.exe Assinatura concluída com êxito para o arquivo test.exe. informações PS C: \ Usuários \ Aaron Russell \ Desktop>
- Detalhes sobre a nova assinatura digital estarão disponíveis nas propriedades do arquivo: