Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
A assinatura do pacote do aplicativo é uma etapa necessária no processo de criação de um pacote de aplicativo do Windows 10 que pode ser implantado. O Windows 10 exige que todos os aplicativos sejam assinados com um certificado de assinatura de código válido.
Para instalar com êxito um aplicativo do Windows 10, o pacote não precisa apenas ser assinado, mas também confiável no dispositivo. Isso significa que o certificado deve ser encadeado a uma das raízes confiáveis no dispositivo. Por padrão, o Windows 10 confia em certificados da maioria das autoridades de certificação que fornecem certificados de assinatura de código.
Além disso, se você estiver criando um pacote MSIX, não há necessidade de assinar todos os pacotes no pacote individualmente. Somente o pacote precisa ser assinado, e todos os pacotes dentro são assinados recursivamente.
| Tópico | Descrição |
|---|---|
| Pré-requisitos para assinatura | Esta seção discute os pré-requisitos necessários para assinar o pacote de aplicativos do Windows 10. |
| Usando o SignTool | Esta seção discute como usar o SignTool do SDK do Windows 10 para assinar o pacote do aplicativo. |
| Assinar um pacote MSIX com assinatura do Device Guard | Esta seção discute como assinar seu aplicativo com a assinatura do Device Guard. |
| Criando pacotes não assinados para teste | Esta seção discute como criar um pacote msix não assinado. |
Marcação de hora
É altamente recomendável que o carimbo de data/hora seja usado ao assinar seu aplicativo com um certificado. O carimbo de data/hora preserva a assinatura, permitindo que o pacote do aplicativo seja aceito pela plataforma de implantação do aplicativo mesmo após a expiração do certificado. No momento da inspeção do pacote, o carimbo de data/hora permite que a assinatura do pacote seja validada em relação ao momento em que foi assinada. Isso permite que os pacotes sejam aceitos mesmo depois que o certificado não for mais válido. Os pacotes que não tiverem carimbo de data/hora serão avaliados em relação à hora atual e, se o certificado não for mais válido, o Windows não aceitará o pacote.
A seguir estão os diferentes cenários em torno da assinatura de aplicativo com/sem carimbo de data/hora:
| Cenário | O aplicativo é assinado sem carimbo de data/hora | O aplicativo é assinado com carimbo de data/hora |
|---|---|---|
| O certificado é válido | O aplicativo será instalado | O aplicativo será instalado |
| O certificado é inválido(expirou) | O aplicativo não será instalado | O aplicativo será instalado à medida que a autenticidade do certificado for verificada na assinatura pela autoridade de carimbo de data/hora |
Observação
Se o aplicativo for instalado com êxito em um dispositivo, ele continuará a ser executado mesmo após a expiração do certificado, independentemente de estar com carimbo de data/hora ou não.
Aplicação da integridade do pacote
Além de garantir que apenas aplicativos confiáveis sejam instalados em um dispositivo, um benefício adicional de assinar um pacote MSIX é que ele permite que o Windows imponha a integridade do seu pacote e seu conteúdo depois que ele é implantado em um dispositivo. Encadeando ao AppxBlockMap.xml e AppxSignature.p7x em um pacote assinado, o Windows é capaz de executar verificações de validação sobre a integridade de um pacote e seu conteúdo em tempo de execução e durante as verificações do Windows Defender. Se um pacote for considerado adulterado, o Windows bloqueará a inicialização do aplicativo e iniciará um fluxo de trabalho de correção para que o pacote seja reparado ou reinstalado. Para pacotes não distribuídos pela Microsoft Store, a integridade do pacote será imposta se o pacote declarar o elemento uap10:PackageIntegrity e for implantado no Windows 2004 e compilações posteriores. Abaixo está um exemplo de declaração de aplicação da integridade do pacote no AppxManifest.xml:
<Package ...
xmlns:uap10="http://schemas.microsoft.com/appx/manifest/uap/windows10/10"
IgnorableNamespaces="uap10">
...
<Properties>
<uap10:PackageIntegrity>
<uap10:Content Enforcement="on" />
</uap10:PackageIntegrity>
</Properties>
...
</Package>
Modo de dispositivo
O Windows 10 permite que os usuários selecionem o modo no qual executar o dispositivo no aplicativo Configurações. Os modos são aplicativos da Microsoft Store, aplicativos de sideload e modo de desenvolvedor.
Os aplicativos da Microsoft Store são os mais seguros, pois só permitem a instalação de aplicativos da Microsoft Store. Os aplicativos na Microsoft Store passam por um processo de certificação para garantir que sejam seguros para uso.
Os aplicativos de sideload e o modo de desenvolvedor são mais permissivos em relação aos aplicativos assinados por outros certificados, desde que esses certificados sejam confiáveis e encadeados a uma das raízes confiáveis no dispositivo. Selecione Modo de desenvolvedor somente se você for um desenvolvedor e estiver criando ou depurando aplicativos do Windows 10. Mais informações sobre o modo de desenvolvedor e o que ele fornece podem ser encontradas aqui.
Observação
A partir do Windows 10 versão 2004, a opção Sideload está ativada por padrão. Como resultado, o modo de desenvolvedor agora é uma alternância. As empresas ainda podem desativar o Sideload via política.