Partager via


Signer un package d’application Windows 10

La signature de package d’application est une étape requise dans le processus de création d’un package d’application Windows 10 qui peut être déployé. Windows 10 nécessite que toutes les applications soient signées avec un certificat de signature de code valide.

Pour installer correctement une application Windows 10, le package ne doit pas seulement être signé, mais également approuvé sur l’appareil. Cela signifie que le certificat doit être chaîné à l’une des racines de confiance sur l’appareil. Par défaut, Windows 10 approuve les certificats de la plupart des autorités de certification qui fournissent des certificats de signature de code.

En outre, si vous créez un bundle MSIX, il n’est pas nécessaire de signer tous les packages dans le bundle individuellement. Seul le bundle doit être signé, et tous les packages à l’intérieur sont signés de manière récursive.

Sujet Descriptif
Conditions préalables à la signature Cette section décrit les conditions préalables requises pour signer le package d’application Windows 10.
Utilisation de SignTool Cette section explique comment utiliser SignTool à partir du Kit de développement logiciel (SDK) Windows 10 pour signer le package d’application.
Signer un package MSIX avec la signature Device Guard Cette section explique comment signer votre application avec la signature Device Guard.
Création de packages non signés à des fins de test Cette section explique comment créer un package msix non signé.

Horodatage

Il est vivement recommandé d’utiliser l’horodatage lors de la signature de votre application avec un certificat. L’horodatage conserve la signature permettant au package d’application d’être accepté par la plateforme de déploiement d’application, même après l’expiration du certificat. Au moment de l’inspection du package, l’horodatage permet la validation de la signature du package par rapport au moment où elle a été signée. Cela permet aux packages d’être acceptés même après que le certificat n’est plus valide. Les packages qui ne sont pas horodatés sont évalués par rapport à l’heure actuelle et si le certificat n’est plus valide, Windows n’accepte pas le package.

Voici les différents scénarios liés à la signature d'application avec/sans horodatage :

Scénario L’application est signée sans horodatage L’application est signée avec horodatage
Le certificat est valide L’application installe L’application installe
Le certificat n’est pas valide(expiré) L’application échoue à l’installation L'application s'installera puisque l'authenticité du certificat a été vérifiée lors de la signature par l'autorité de l'horodatage.

Remarque

Si l’application est correctement installée sur un appareil, elle continue à s’exécuter même après l’expiration du certificat, qu’elle soit horodatée ou non.

Application de l’intégrité du package

En plus de s’assurer que seules les applications approuvées sont installées sur un appareil, un avantage supplémentaire de signer un package MSIX est qu’il permet à Windows d’appliquer l’intégrité de votre package et son contenu après son déploiement sur un appareil. En chaînant les AppxBlockMap.xml et AppxSignature.p7x dans un package signé, Windows est en mesure d’effectuer des vérifications de validation sur l’intégrité d’un package et de son contenu lors de l’exécution, et pendant les analyses de Windows Defender. Si un package est considéré comme falsifié, Windows bloque le lancement de l’application et lance un workflow de correction pour obtenir le package réparé ou réinstallé. Pour les packages non distribués via le Microsoft Store, l’intégrité du package est appliquée si le package déclare l’élément uap10 :PackageIntegrity et est déployé sur Windows 2004 et versions ultérieures. Voici un exemple de déclaration du contrôle de l'intégrité des paquets dans le 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>

Mode de l'appareil

Windows 10 permet aux utilisateurs de sélectionner le mode dans lequel exécuter leur appareil dans l’application Paramètres. Les modes sont les applications du Microsoft Store, les applications de chargement indépendant et le mode développeur.

Les applications du Microsoft Store sont les plus sécurisées, car elles autorisent uniquement l’installation d’applications à partir du Microsoft Store. Les applications du Microsoft Store passent par le processus de certification pour s’assurer que les applications sont sécurisées pour être utilisées.

Charger une version test des applications et Mode développeur sont plus permissifs quant aux applications signées par d’autres certificats, tant que ces certificats sont approuvés et chaînés à l’une des racines de confiance sur l’appareil. Sélectionnez uniquement le mode Développeur si vous êtes développeur et que vous créez ou déboguez des applications Windows 10. Vous trouverez plus d’informations sur le mode développeur et ce qu’il fournit ici.

Remarque

À compter de Windows 10 version 2004, l’option Chargement indépendant est activée par défaut. Par conséquent, le mode développeur est désormais un bouton bascule. Les entreprises peuvent toujours désactiver le chargement latéral via une politique.