Se connecter avec Microsoft
S'identifier ou créer un compte.
Bonjour,
Sélectionnez un autre compte.
Vous avez plusieurs comptes
Choisissez le compte avec lequel vous voulez vous connecter.

Cet article explique comment signer numériquement un projet macro sur Windows à l’aide d’un certificat. Si vous n’avez pas encore de certificat numérique, vous devez en obtenir un.

Conseil : Pour utiliser ou tester des projets de macro sur votre propre ordinateur, vous pouvez créer votre propre certificat de signature automatique à l’aide de l’outil Selfcert.exe. Vous trouverez plus d’informations à ce sujet ci-dessous.

Obtenir un certificat numérique

Vous pouvez obtenir un certificat numérique auprès d’une autorité de certification commerciale, de votre administrateur de sécurité interne ou d’un professionnel des technologies de l’information (IT).

Pour en savoir plus sur les autorités de certification qui offrent des services pour les produits Microsoft, consultez la liste des membres du programme de certificat racine Microsoft.

Dans la mesure où les certificats numériques que vous créez ne sont pas émis par une autorité de certification approuvée officielle, les projets macro signés à l’aide de ce type de certificat sont appelés projets auto-signés. Microsoft Office n’approuve les certificats auto-signés que sur les ordinateurs où le certificat d’auto-signature est ajouté au dossier Autorités de certification racines de confiance dans le magasin de certificats de l’utilisateur actuel. Cela le rend utile pour le test ou l’utilisation sur votre propre ordinateur ou un très petit nombre de machines que vous gérez, mais pas très bon pour distribuer des projets de macros à d’autres personnes.

Créer un certificat d’auto-signature

  1. Accédez à C :\Program Files (x86)\Microsoft Office\root\Office16.

    Conseil : Si vous ne le trouvez pas dans ce dossier, essayez C :\Program Files\Microsoft Office\root\Office16

  2. Cliquez sur SelfCert.exe. La boîte de dialogue Créer un certificat numérique s’affiche.

  3. Dans le champ Nom de votre certificat, entrez un nom descriptif pour le certificat.

  4. Cliquez sur OK.

  5. Lorsque le message Succès de SelfCert s’affiche, cliquez sur OK.

  1. Accédez à C:\Program Files\Microsoft Office\<version d’Office>\.

  2. Cliquez sur SelfCert.exe. La boîte de dialogue Créer un certificat numérique s’affiche.

  3. Dans le champ Nom de votre certificat, entrez un nom descriptif pour le certificat.

  4. Cliquez sur OK.

  5. Lorsque le message Succès de SelfCert s’affiche, cliquez sur OK.

Afficher le certificat dans le magasin de certificats personnels

  1. Ouvrez Microsoft Edge.

  2. Entrez edge://settings/privacy dans la barre d’adresse.

  3. Faites défiler jusqu’à la section Sécurité , puis sélectionnez Gérer les certificats.

Signer numériquement un projet de macro VBA dans Excel, PowerPoint, Publisher, Visio, Outlook ou Word

  1. Ouvrez le fichier qui contient le projet macro à signer.

  2. Sous l’onglet Développeur, dans le groupe Code, cliquez sur Visual Basic.

    Remarque : Si l’onglet Développeur n’est pas disponible : cliquez sur l’onglet Fichier . Cliquez sur Options. Cliquez sur Personnaliser le ruban. Dans la liste Personnaliser le ruban , cliquez sur Développeur, puis sur OK.

  3. Dans Visual Basic, dans le menu Outils, cliquez sur Signature numérique.

  4. La boîte de dialogue Signature numérique s’affiche.

  5. Sélectionnez un certificat et cliquez sur OK.

    Remarque : Si vous n’avez pas sélectionné de certificat numérique ou si vous souhaitez en utiliser un autre, cliquez sur Choisir. Sélectionnez un certificat et cliquez sur OK.

Ajouter un horodatage à votre signature

Lorsque les utilisateurs exécutent votre macro VBA, Office case activée la signature et le certificat avec lequel elle a été signée. L’ajout d’un horodatage à votre signature signifie que votre macro sera toujours traitée comme signée, même après l’expiration de votre certificat, tant que le certificat n’est pas révoqué. Cela peut réduire les interruptions pour les utilisateurs.

Un certificat qui a simplement expiré peut toujours être utilisé pour valider le code. Il ne peut tout simplement pas être utilisé pour signer un nouveau code.

Pour ajouter un horodatage, vous devez ajouter trois clés à votre registre.

Attention :  La modification incorrecte du registre peut endommager votre système. Avant d’apporter des modifications au registre, nous vous recommandons de sauvegarder toutes les données de valeur sur l’ordinateur.

Touche

Type

Description

HKCU\Software\Microsoft\VBA\Security\TimeStampURL

REG_SZ 

URL de votre serveur d’horodatage préféré. (Obligatoire)

HKCU\Software\Microsoft\VBA\Security\TimeStampRetryCount

REG_DWORD

Nombre de tentatives de connexion du Rédacteur Visual Basic au serveur d’horodatage avant d’échouer. (Facultatif : si vous ne le définissez pas, le Rédacteur Visual Basic n’essaiera de contacter le serveur qu’une seule fois)

HKCU\Software\Microsoft\VBA\Security\TimeStampRetryDelay  

REG_DWORD

Nombre de secondes (en millisecondes) pendant lesquelles le Rédacteur Visual Basic attend entre une nouvelle tentative de connexion au serveur d’horodatage. (Facultatif : si vous ne le définissez pas, il n’y aura aucun délai entre les nouvelles tentatives)

Une fois que vous avez ajouté une entrée TimeStampURL de travail, visual Basic Rédacteur ajoute automatiquement un horodatage chaque fois que vous signez numériquement une macro.

Notes supplémentaires

  • Il est recommandé de signer les macros uniquement une fois que votre solution a été testée et prête à être distribuée : lorsque le code d’un projet de macro signé est modifié d’une manière ou d’une autre, sa signature numérique est supprimée. Toutefois, si vous disposez sur votre ordinateur du certificat numérique valide précédemment utilisé pour signer le projet, une nouvelle signature du projet macro interviendra automatiquement lors de l’enregistrement.

  • Une façon d’empêcher les utilisateurs de modifier accidentellement votre projet de macro et d’invalider votre signature consiste à verrouiller le projet de macro avant d’appliquer la signature. Votre signature numérique garantit que le projet n’a pas été falsifié depuis que vous l’avez signé, mais elle ne prouve pas que vous avez écrit le projet. Même si vous avez verrouillé votre projet de macro, un autre utilisateur peut toujours remplacer votre signature par une autre signature. Les administrateurs d’entreprise peuvent également re-signer des modèles et des compléments pour s’assurer que seul le contenu approuvé est exécuté sur les ordinateurs de l’entreprise.

  • Si vous créez un complément qui ajoute du code à un projet macro, votre code doit déterminer si le projet est signé numériquement et indiquer aux utilisateurs les conséquences de la modification d’un projet signé avant de continuer.

  • Les utilisateurs qui utilisent des certificats commerciaux peuvent rencontrer des blocs en raison de la limitation des algorithmes de hachage pris en charge lors de la signature. Vous pouvez ajouter une clé-valeur de Registre DWORD V1HashEnhanced pour choisir un autre algorithme de hachage, sous HKCU\SOFTWARE\Microsoft\VBA\Security avec des règles d’algorithme de valeur (1 à SHA1, 2 à SHA256, 3 à SHA384, 4 à SHA512 et d’autres à MD5). Ce paramètre est disponible dans les dernières versions du canal CC.

En savoir plus

Activer ou désactiver les macros dans les fichiers Microsoft 365

Remarque : Cet article a été créé par une personne avec l’aide d’une intelligence artificielle (IA).

Besoin d’aide ?

Vous voulez plus d’options ?

Explorez les avantages de l’abonnement, parcourez les cours de formation, découvrez comment sécuriser votre appareil, etc.

Les communautés vous permettent de poser des questions et d'y répondre, de donner vos commentaires et de bénéficier de l'avis d'experts aux connaissances approfondies.

Ces informations vous ont-elles été utiles ?

Dans quelle mesure êtes-vous satisfait(e) de la qualité de la langue ?
Qu’est-ce qui a affecté votre expérience ?
En cliquant sur Envoyer, vos commentaires seront utilisés pour améliorer les produits et services de Microsoft. Votre administrateur informatique sera en mesure de collecter ces données. Déclaration de confidentialité.

Nous vous remercions de vos commentaires.

×