SSL-certifikaternes maksimale levetid reduceres til 200 dage fra marts 2026. Læs mere →

Signér Office-makroer med et Code Signing-certifikat

Signér VBA-projekter i Excel (.xlsm), Word (.docm), PowerPoint (.pptm) og andre Office-filer. Denne guide dækker både USB-token og Azure Key Vault-signering, inklusiv det kritiske 32-bit krav, der forårsager de fleste signeringsfejl.

Hvorfor signere Office-makroer?

  • Betroet kørsel uden sikkerhedsadvarsler, når filen åbnes
  • Group Policy-håndhævelse: IT-afdelinger kan begrænse kørsel til kun signerede makroer
  • Manipulationsbeskyttelse: V3-signaturer retter CVE-2020-0760
  • Virksomhedskrav: mange organisationer kræver signerede makroer i deres sikkerhedspolitikker

Vigtigt: 32-bit signeringskrav

Office SIP (Subject Interface Package) DLL-filer er 32-bit. Du skal bruge 32-bit versionen af signtool.exe eller 32-bit .NET-hosten til AzureSignTool. Brug af 64-bit værktøjer er den hyppigste årsag til, at signering af Office-filer fejler.

Du har også brug for OfficeSIPs-pakken fra Microsoft (download ID 56617), som indeholder msosipx.dll til moderne Office-formater og msosip.dll til ældre formater.

Opsætning

1. Installér OfficeSIPs

Download OfficeSIPs-pakken fra Microsoft Download Center (ID 56617) ↗. Udpak pakken og find msosipx.dll (moderne formater) og msosip.dll (ældre formater).

2. Registrér med 32-bit regsvr32

Brug 32-bit regsvr32 til at registrere SIP DLL-filen:

C:\Windows\SysWOW64\regsvr32.exe msosipx.dll

3. Find 32-bit signtool

32-bit signtool findes i x86-mappen i Windows SDK:

C:\Program Files (x86)\Windows Kits\10\bin\<version>\x86\signtool.exe

Signering med signtool (USB-token / SafeNet)

Brug 32-bit signtool med /sha1-flaget til at identificere dit certifikat via thumbprint. Kør kommandoen tre gange for at oprette alle tre signaturtyper.

Kør 3 gange (opretter Legacy, Agile, V3-signaturer):

signtool sign /sha1 YOUR_THUMBPRINT /fd sha256 ^
  /tr http://timestamp.digicert.com /td sha256 ^
  "C:\path\to\your-file.xlsm"

Inkludér altid tidsstempling (/tr), så signaturer forbliver gyldige, efter certifikatet udløber.

Signering med AzureSignTool (Azure Key Vault)

Brug x86 .NET-hosten eller publicér AzureSignTool med -r win-x86-flaget. Kør kommandoen tre gange (samme som signtool).

Kør 3 gange (opretter Legacy, Agile, V3-signaturer):

"C:\Program Files (x86)\dotnet\dotnet.exe" tool run AzureSignTool sign ^
  -kvu https://your-vault.vault.azure.net ^
  -kvc your-certificate-name ^
  -kvt YOUR_TENANT_ID ^
  -kvi YOUR_CLIENT_ID ^
  -kvs YOUR_CLIENT_SECRET ^
  -fd sha256 ^
  -tr http://timestamp.digicert.com ^
  -td sha256 ^
  "C:\path\to\your-file.xlsm"

Tredobbelt signering forklaret

Office VBA-projekter bruger tre separate signaturformater. Hvert gennemløb af signtool opretter én ekstra signatur.

Gennemløb Signatur Lagring Bemærkninger
1 Legacy vbaProjectSignature.bin Originalt format, alle Office-versioner
2 Agile vbaProjectSignatureAgile.bin Office 2010 og nyere
3 V3 vbaProjectSignatureV3.bin Retter CVE-2020-0760. Microsoft 365 2102+, Office 2019/2016 med opdateringer.

Understøttede filtyper

Moderne OOXML-formater (bruger msosipx.dll)

.xlsm.xlam.xlsb.xltm.docm.dotm.potm.ppam.ppsm.pptm

Ældre formater (bruger msosip.dll)

.xls.doc.ppt

Signeringsprocessen er den samme for alle filtyper.

Almindelige fejl og løsninger

"File format cannot be signed because it is not recognized"

OfficeSIPs (msosipx.dll) er ikke registreret, eller du bruger 64-bit signtool. Registrér med 32-bit regsvr32 og brug x86 signtool.

Signaturen er ikke synlig i Office

Du har kun signeret én gang i stedet for tre. Office kræver alle tre signaturformater (Legacy, Agile, V3), for at signaturen vises i VBA-editoren.

AzureSignTool kan ikke signere Office-filer

Du bruger ikke x86 .NET-runtimen. Brug C:\Program Files (x86)\dotnet\dotnet.exe til at køre AzureSignTool, eller publicér det som en selvstændig x86-binær med -r win-x86.

Code Signing-certifikater

OV Code Signing

DigiCert

DigiCert CodeSign OV

OV

DigiCert OV Code Signing. Bred platformsupport.

fra 3.550 DKK /år Se detaljer →
GlobalSign

GlobalSign CodeSign

OV

GlobalSign OV Code Signing. Stærkt brand.

fra 2.800 DKK /år Se detaljer →

EV Code Signing

Ofte stillede spørgsmål om signering af Office-makroer

Find svar på de mest almindelige spørgsmål om SSL certifikater og FairSSL.

Ja. Brug AzureSignTool med x86 .NET-hosten (C:\Program Files (x86)\dotnet\dotnet.exe) eller publicér med -r win-x86-flaget. Signeringsprocessen er identisk med signering af eksekverbare filer, men du skal køre den tre gange.
Nej. Ethvert Code Signing-certifikat virker (OV eller EV). Extended Key Usage 1.3.6.1.5.5.7.3.3 dækker både softwaresignering og makrosignering.
Office VBA bruger tre signaturformater: Legacy (til ældre Office-versioner), Agile (til Office 2010+) og V3 (indført for at rette CVE-2020-0760, en sårbarhed i forbindelse med manipulation). Alle tre er nødvendige for fuld kompatibilitet og sikkerhed.
Enten er OfficeSIPs (msosipx.dll) ikke registreret, eller du bruger 64-bit signtool i stedet for 32-bit versionen. Office SIP DLL-filer er 32-bit, så du skal bruge 32-bit signtool fra C:\Program Files (x86)\Windows Kits\10\bin\<version>\x86\.

Klar til at signere dine Office-makroer?

Opret en gratis konto og udsted dit første certifikat på under 10 minutter.