Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Authenticode est une technologie Microsoft qui utilise le chiffrement standard pour signer le code d’application avec des certificats numériques qui vérifient l’authenticité de l’éditeur de l’application. En utilisant Authenticode pour le déploiement d’applications, ClickOnce réduit le risque d’un cheval de Troie. Un cheval de Troie est un virus ou un autre programme dangereux qu’un tiers malveillant fausse comme un programme légitime provenant d’une source établie et fiable. La signature de déploiements ClickOnce avec un certificat numérique constitue une étape facultative permettant de vérifier que les assemblages et les fichiers ne sont pas falsifiés.
Les sections suivantes décrivent les différents types de certificats numériques utilisés dans Authenticode, la façon dont les certificats sont validés à l’aide des autorités de certification, le rôle de l’horodatage dans les certificats et les méthodes de stockage disponibles pour les certificats.
Authenticode et signature de code
Un certificat numérique est un fichier qui contient une paire de clés publique/privée de chiffrement, ainsi que des métadonnées décrivant l’éditeur auquel le certificat a été émis et l’agence qui a émis le certificat.
Il existe différents types de certificats Authenticode. Chacun d’eux est configuré pour différents types de signature. Pour les applications ClickOnce, vous devez disposer d’un certificat Authenticode valide pour la signature de code. Si vous tentez de signer une application ClickOnce avec un autre type de certificat, tel qu’un certificat de messagerie numérique, il ne fonctionnera pas. Pour plus d’informations, consultez Présentation de la signature de code.
Vous pouvez obtenir un certificat pour la signature de code de l’une des trois manières suivantes :
Achetez-en un auprès d’un fournisseur de certificats.
Recevez-en un d'un groupe au sein de votre organisation qui est chargé de créer des certificats numériques.
Générez votre propre certificat à l’aide de l’applet de commande PowerShell New-SelfSignedCertificate ou à l’aide deMakeCert.exe, qui est inclus dans le Kit de développement logiciel Windows (SDK).
Comment l’utilisation des autorités de certification aide les utilisateurs
Un certificat généré à l’aide de New-SelfSignedCertificate ou de l’utilitaire deMakeCert.exe est généralement appelé certificat auto-cert ou certificat de test. Ce type de certificat fonctionne de la même façon qu’un fichier .snk fonctionne dans le .NET Framework. Il se compose uniquement d’une paire de clés de chiffrement publique/privée et ne contient aucune information vérifiable sur l’éditeur. Vous pouvez utiliser des certificats auto-signés pour déployer des applications ClickOnce avec une confiance élevée sur un intranet. Toutefois, lorsque ces applications s’exécutent sur un ordinateur client, ClickOnce les identifie comme provenant d’un serveur de publication inconnu. Par défaut, les applications ClickOnce signées avec des certificats autonomes et déployées sur Internet ne peuvent pas utiliser le déploiement d’applications approuvées.
En revanche, si vous recevez un certificat d’une autorité de certification, tel qu’un fournisseur de certificats ou un service au sein de votre entreprise, le certificat offre davantage de sécurité pour vos utilisateurs. Il identifie non seulement l’éditeur du logiciel signé, mais vérifie cette identité en vérifiant avec l’autorité de certification qui l’a signée. Si l’autorité de certification n’est pas l’autorité racine, Authenticode revient également à l’autorité racine pour vérifier que l’autorité de certification est autorisée à émettre des certificats. Pour une sécurité accrue, vous devez utiliser un certificat émis par une autorité de certification dans la mesure du possible.
Pour plus d’informations sur la génération de certificats auto-certs, consultez New-SelfSignedCertificate ou MakeCert.
Timestamps
Les certificats utilisés pour signer des applications ClickOnce expirent après une certaine durée, généralement douze mois. Pour supprimer la nécessité de réinscrire constamment des applications avec de nouveaux certificats, ClickOnce prend en charge l’horodatage. Lorsqu’une application est signée avec un horodatage, son certificat continue d’être accepté même après expiration, à condition que l’horodatage soit valide. Cela permet aux applications ClickOnce avec des certificats expirés, mais des horodatages valides, de télécharger et d’exécuter. Il permet également aux applications installées avec des certificats expirés de continuer à télécharger et installer les mises à jour.
Pour inclure un horodatage dans un serveur d’applications, un serveur d’horodatage doit être disponible. Pour plus d’informations sur la sélection d’un serveur d’horodatage, consultez Guide pratique pour signer des manifestes d’application et de déploiement.
Mettre à jour les certificats expirés
Dans les versions antérieures du .NET Framework, la mise à jour d’une application dont le certificat avait expiré peut entraîner l’arrêt de fonctionnement de cette application. Pour résoudre ce problème, utilisez l’une des méthodes suivantes :
Mettez à jour le .NET Framework version 3.5 ou ultérieure.
Désinstallez l’application et réinstallez une nouvelle version avec un certificat valide.
Stocker des certificats
- Vous pouvez stocker des certificats en tant que fichier .pfx sur votre système de fichiers, ou les stocker à l’intérieur d’un conteneur de clés. Un utilisateur sur un domaine Windows peut avoir un certain nombre de conteneurs de clés. Par défaut, MakeCert.exe stocke les certificats dans votre conteneur de clés personnelles, sauf si vous spécifiez qu’il doit l’enregistrer dans un fichier .pfx à la place. Mage.exe et MageUI.exe, les outils du Kit de développement logiciel (SDK) Windows pour la création de déploiements ClickOnce vous permettent d’utiliser des certificats stockés de manière ou d’une autre.