Implantação ClickOnce e Authenticode

Authenticode é uma tecnologia Microsoft que usa criptografia padrão do setor para assinar o código do aplicativo com certificados digital que verificam a autenticidade do publicador do aplicativo.Usando Authenticode para implantação de aplicativos, ClickOnceajuda a evitar o fenômeno de um "cavalo de Tróia", onde um terceiro mal-intencionado misrepresents um vírus ou Outros programa prejudicial sistema autônomo um programa legítimo proveniente de uma fonte confiável e estabelecida. All ClickOnce implantações devem ser assinadas com um certificado digital.

As seções a seguir descrevem os diferentes tipos de certificados digital usados no Authenticode, como os certificados são validados usando o certificado autoridades, a função do carimbo de time em certificados e os métodos de armazenamento disponível para certificados.

Authenticode e assinatura de código

A certificado digital é um arquivo que contém uma pública/privada chave criptográfica, juntamente com metadados que descrevem o publicador para quem o certificado foi emitido e a agência que emitiu o certificado.

Há vários tipos de certificados do Authenticode, cada uma vez configurado para diferentes tipos de assinatura.For ClickOnce aplicativos, você deve ter um certificado Authenticode que é válido para assinatura de código; se você tentar assinar um ClickOnce aplicativo com outro tipo de certificado, sistema autônomo um certificado digital de email, ele não funcionará. Para obter mais informações, consulte Introdução à assinatura de código (https://msdn.microsoft.com/biblioteca/padrão.asp?url=/workshop/segurança/authcode/intro\_authenticode.asp).

Você pode obter um certificado de assinatura de três maneiras de código:

  • Adquira um de um fornecedor de certificado.

  • Recebe uma de um agrupar em sua organização responsável pela criação de certificados digital.

  • gerar seu próprio certificado com MakeCert.exe, que está incluído com o .NET estrutura Software Development Kit (SDK).

Como usar autoridades de certificação ajuda usuários

  • Um certificado gerado usando o utilitário MakeCert.exe normalmente é chamado de um "auto-certificação" ou "certificado de teste".Esse tipo de certificado funciona muito da mesma maneira que um arquivo .snk funciona no .NET estrutura: Ele consiste exclusivamente em um emparelhar de chaves criptográficas pública/particular e não contém nenhuma informação sobre o publicador pode ser verificada.Você pode usar certificados auto para implantar ClickOnce aplicativos com confiança alta em uma intranet; no entanto, quando esses aplicativos executar em um computador cliente, ClickOnceidentificará sistema autônomo vindo de "publicador desconhecido". Por padrão, ClickOnce aplicativo s assinadas com certificados auto e implantado pela Internet não poderão utilizar confiáveis aplicativo implantação.

  • Por outro lado, se você receber um certificado de uma autoridade de certificação — sistema autônomo um fornecedor de certificado ou um departamento em sua empresa — o certificado oferece mais segurança para sistema autônomo usuários.Ele não só identifica o publicador do software assinado, mas ele verifica essa identidade observando-se com a autoridade de certificação assinado.Se a autoridade de certificação não for a autoridade raiz, Authenticode irá também "cadeia" volta para a autoridade raiz para verificar se está autorizada a autoridade de certificação para emitir certificados.Para maior segurança, você deve usar um certificado emitido por uma autoridade de certificação sempre que possível.

Para obter mais informações sobre como gerar certificados auto, consulte Ferramenta de criação de certificado (Makecert.exe).

Como o carimbo de data / time pode impedir involuntário expiração

Mesmo que os certificados fornecem mais segurança, uma pessoa não autorizada pode obter um certificado e sua senha associada no seu proprietário legítimo.Por padrão, um certificado emitido por uma autoridade de certificação só é válido por 12 meses.Isso faz com que o proprietário do certificado a testar novamente suas identidades por meio da autoridade de certificação, que garante comprometidos certificados só podem ser usados por um curto período de time.

Normalmente, expiração de certificado seria significa que você precisa assinar novamente o seu ClickOnce aplicativo a cada 12 meses. Authenticode reduz a necessidade disso com suporte para o carimbo de data / time.Quando você se inscreve um ClickOnce implantação usando um certificado ClickOnce registra a data e time da assinatura e incorpora na assinatura digital da implantação. Desde que a implantação foi assinada quando o certificado ainda era válido, ClickOnce permitirá que o aplicativo executar o mesmo se o certificado já expirou.

Visual Studio e o Windows Software Development Kit (SDK) ferramentas para a criação ClickOnce suportam a implantações, Mage.exe e MageUI.Exe, carimbo de data / time.

Armazenamento de certificados

  • Você pode armazenar certificados sistema autônomo um arquivo .pfx em seu sistema de arquivos, ou você pode armazená-los dentro de um contêiner de chave.Um usuário em um domínio do Windows pode ter vários recipientes de chave.Por padrão, o MakeCert.exe armazenará certificados em seu contêiner de chave particular, a menos que você especifique que ela deve salvá-lo em um .pfx em vez disso.Mage.exe e MageUI.exe, a Windows SDK ferramentas para a criação ClickOnce implantações, permitirá que você utilize certificados armazenados em qualquer modo.

Consulte também

Conceitos

Visão geral sobre a implantação do ClickOnce

Implantação ClickOnce e segurança

Confiável aplicativo implantação visão geral

Referência

Geração e Edição (Mage.exe) ferramenta de manifesto