Signere et VBA-makroprojekt digitalt

Gælder for
Excel til Microsoft 365 Word til Microsoft 365 Outlook til Microsoft 365 PowerPoint til Microsoft 365 Publisher til Microsoft 365 Excel 2024 Outlook 2024 PowerPoint 2024 Excel 2021 Word 2021 Outlook 2021 PowerPoint 2021 Publisher 2021 Visio Professional 2021 Visio Standard 2021 Excel 2019 Word 2019 Outlook 2019 PowerPoint 2019 Publisher 2019 Visio Professional 2019 Visio Standard 2019 Excel 2016 Word 2016 Outlook 2016 PowerPoint 2016 Publisher 2016 Visio Professional 2016 Visio Standard 2016 Visio Professional 2013

I denne artikel beskrives det, hvordan du kan signere et makroprojekt i Windows digitalt ved hjælp af et certifikat. Hvis du ikke allerede har et digitalt certifikat, skal du anskaffe et.

Tip

Hvis du vil bruge eller teste makroprojekter på din egen computer, kan du oprette dit eget selvsignerende certifikat ved hjælp af værktøjet Selfcert.exe. Du kan finde flere oplysninger om det nedenfor.

Få et digitalt certifikat

Du kan få et digitalt certifikat fra et kommercielt nøglecenter, din interne sikkerhedsadministrator eller it-ekspert.

Du kan få flere oplysninger om nøglecentre, der tilbyder tjenester til Microsoft-produkter, på listen over medlemmer i Microsofts rodcertifikatprogram.

Bruge et selvsigneret certifikat

Da et digitalt certifikat, som du har oprettet, ikke er udstedt af et formelt nøglecenter, der er tillid til, kaldes makroprojekter, der er signeret med et sådant certifikat, for selvsignerede projekter. Microsoft Office har kun tillid til et selvsigneret certifikat på en computer, der har disse selvsignerende certifikater føjet til mappen Rodnøglecenter, der er tillid til i lageret Certifikater – Aktuel bruger. Det gør den god til test eller brug på din egen maskine eller et meget lille antal maskiner, du administrerer, men ikke særlig god til at distribuere makroprojekter til andre personer.

Opret et selvsignerende certifikat

Hvilken version af Windows bruger du?

Windows 10 eller nyere

  1. Gå til C:\Program Files (x86)\Microsoft Office\root\Office16.

    Tip

    Hvis du ikke finder det i denne mappe, kan du prøve C:\Program Files\Microsoft Office\root\Office16

  2. Klik på SelfCert.exe. Dialogboksen Opret et digitalt certifikat vises.

  3. Skriv et beskrivende navn til certifikatet i boksen Certifikatets navn.

  4. Klik på OK.

  5. Klik på OK, når meddelelsen SelfCert er udført vises.

Windows 8

  1. Gå til C:\Program Files\Microsoft Office\Office-version<>\.
  2. Klik på SelfCert.exe. Dialogboksen Opret et digitalt certifikat vises.
  3. Skriv et beskrivende navn til certifikatet i boksen Certifikatets navn.
  4. Klik på OK.
  5. Klik på OK, når meddelelsen SelfCert er udført vises.

Få vist certifikatet i Personlige certifikater

  1. Åbn Microsoft Edge.
  2. Skriv edge://settings/privacy på adresselinjen.
  3. Rul ned til sektionen Sikkerhed , og vælg Administrer certifikater.

Signere et VBA-makroprojekt digitalt i Excel, PowerPoint, Publisher, Visio, Outlook eller Word

  1. Åbn den fil, der indeholder det makroprojekt, du vil signere.

  2. Klik på Visual Basic under fanen Udvikler i gruppen Kode.

    Bemærk

    Hvis fanen Udvikler ikke er tilgængelig: Klik på fanen Filer . Klik på Indstillinger. Klik på Tilpas båndet. Klik på Udvikler på listen Tilpas båndet, og klik derefter på OK.

  3. Klik på Digital signatur i menuen Funktioner i Visual Basic.

  4. Dialogboksen Digital signatur vises.

  5. Vælg et certifikat, og klik på OK.

    Bemærk

    Klik på Vælg, hvis du ikke har valgt et digitalt certifikat eller vil bruge et andet. Vælg et certifikat, og klik på OK.

Føje et tidsstempel til din signatur

Når folk kører din VBA-makro, kontrollerer Office signaturen og det certifikat, den blev signeret med. Når du føjer et tidsstempel til signaturen, betyder det, at makroen stadig behandles som signeret, selv efter at certifikatet er udløbet, så længe certifikatet ikke er tilbagekaldt. Dette kan reducere forstyrrelser for brugerne.

Et certifikat, der blot er udløbet, kan stadig bruges til at validere kode. Det kan bare ikke bruges til at signere ny kode.

Hvis du vil tilføje et tidsstempel, skal du føje tre nøgler til din registreringsdatabase.

Advarsel!

Hvis du redigerer registreringsdatabasen forkert, kan det beskadige systemet alvorligt. Før du foretager ændringer i registreringsdatabasen, anbefaler vi, at du sikkerhedskopierer værdidata på computeren.

Tast Type Beskrivelse
HKCU\Software\Microsoft\VBA\Security\TimeStampURL REG_SZ URL-adressen på din foretrukne tidsstempelserver. (Påkrævet)
HKCU\Software\Microsoft\VBA\Security\TimeStampRetryCount REG_DWORD Antallet af gange, Visual Basic Editor vil forsøge at oprette forbindelse til tidsstempelserveren, før det mislykkes. (Valgfrit – hvis du ikke indstiller dette, vil Visual Basic Editor kun forsøge at kontakte serveren én gang)
HKCU\Software\Microsoft\VBA\Security\TimeStampRetryDelay REG_DWORD Antallet af sekunder (i millisekunder), som Visual Basic Editor venter, fra det er muligt at oprette forbindelse til tidsstempelserveren igen. (Valgfrit – Hvis du ikke indstiller dette, vil der ikke være nogen forsinkelse mellem eventuelle nye forsøg)

Når du har tilføjet en arbejdspost af typen TimeStampURL, tilføjer Visual Basic Editor automatisk et tidsstempel, hver gang du signerer en makro digitalt.

Yderligere noter

  • Det anbefales, at du kun signerer makroer, når din løsning er blevet testet og er klar til distribution: Når kode i et signeret makroprojekt ændres på nogen måde, fjernes den digitale signatur. Hvis du har et gyldigt digitalt certifikat, som tidligere er brugt til at signere projektet på din computer, signeres makroprojektet automatisk igen, når du gemmer det.
  • En måde at forhindre brugere i ved en fejl at ændre dit makroprojekt og gøre din signatur ugyldig, er at låse makroprojektet, før signaturen anvendes. Din digitale signatur sikrer, at der ikke er pillet ved projektet, efter at du har signeret det, men den beviser ikke, at du har skrevet projektet. Selvom du har låst makroprojektet, kan en anden bruger stadig erstatte din signatur med en anden signatur. Virksomhedsadministratorer kan også gensignere skabeloner og tilføjelsesprogrammer for at sikre, at kun godkendt indhold køres på virksomhedens computere.
  • Hvis du opretter et tilføjelsesprogram, der føjer kode til et makroprojekt, bør koden kontrollere, om projektet er digitalt signeret, og give brugeren besked om konsekvenserne af at ændre et signeret projekt, før der fortsættes.
  • Brugere, der bruger kommercielle certifikater, kan støde på blokeringer på grund af begrænsningen af understøttede hashalgoritmer ved signering. Du kan tilføje en DWORD-nøgleværdi i registreringsdatabasen V1HashEnhanced for at vælge en anden hashalgoritme under HKCU\SOFTWARE\Microsoft\VBA\Security med værdialgoritmeregler (1 til SHA1, 2 til SHA256, 3 til SHA384, 4 til SHA512 og andre til MD5). Denne indstilling er tilgængelig i de seneste versioner af CC-kanalen.

Få mere at vide

Aktivér eller deaktiver makroer i Microsoft 365-filer

Bemærk

Denne artikel er oprettet af en person med hjælp fra en kunstig intelligens.