Assinaturas digitais e arquivos de gabinete externos

O Windows Installer pode usar assinaturas digitais para detectar recursos corrompidos. Ao instalar um recurso externo, o certificado do signatário que pertence ao recurso pode ser verificado em relação a um certificado de signatário de referência criado no pacote. O instalador não pode verificar assinaturas para gabinetes internos. Ele só pode verificar assinaturas digitais usando a tabela MsiDigitalSignature e a tabela MsiDigitalCertificate.

Ao instalar um arquivo armazenado em um gabinete externo, o Windows Installer faz o seguinte:

  • O instalador verifica se a entrada de mídia desse gabinete externo está listada na tabela MsiDigitalSignature. Um arquivo armazenado em um gabinete externo é identificado por ter uma entrada na coluna Cabinet da tabela Media sem o caractere “#” como prefixo.
  • Antes de abrir o gabinete externo, o instalador chama WinVerifyTrust para extrair o certificado e as informações de hash atuais. Se houver uma incompatibilidade entre as informações de assinatura atuais no gabinete e as informações de assinatura criadas no pacote, a instalação falhará. A instalação falha porque o gabinete pode ter sido comprometido e não é confiável.

Para obter mais informações sobre o uso de assinaturas digitais, certificados digitais e WinVerifyTrust, confira a seção Segurança do Microsoft Windows Software Development Kit (SDK).

Para obter mais informações, confira MsiGetFileSignatureInformation, tabela MsiDigitalCertificate e tabela MsiDigitalSignature.