Hur man signerar Excel-makron digitalt

Om du någonsin har skapat en automatiserad Excel-rapport eller ett datainmatningsverktyg med VBA, kanske du har sett det irriterande gula säkerhetsfältet som varnar om att dina makron är inaktiverade. Många användare kan välja att inte öppna din fil på grund av denna varning. Digital signering av dina makron kan hjälpa till att lösa detta problem. Den här signaturen berättar för Excel att: Den här koden kommer från en pålitlig skapare. I den här guiden guidar vi dig till att digitalt signera Excel-makron.

Hur man signerar Excel-makron digitalt

Hur man signerar Excel-makron digitalt

När du digitalt signerar ett Excel-makro lägger du till en unik, krypterad signatur till ditt VBA-projekt. Denna signatur fungerar som en manipuleringssäker försegling på en medicinflaska; det visar att ingen har ändrat koden sedan du senast redigerade den. Signaturen använder ett kodsigneringscertifikat, vilket är ett digitalt ID som datorer kontrollerar mot en lista över betrodda myndigheter. Utan en giltig signatur ser Excel varje makro som potentiellt farligt. Men med en signatur behandlas dina makron som pålitliga och säkra.

För att digitalt signera Excel-makron gör du stegen nedan.

När ett kodsigneringscertifikat lagras på en USB-maskinvarutoken, görs signeringsprocessen direkt i Excels Visual Basic-redigerare. Stegen nedan förutsätter att token redan är insatt och att dess certifikat har laddats in i Windows. Följ dessa steg noggrant för att applicera en hållbar signatur på ditt VBA-projekt.

  • Öppna Excel-arbetsboken som innehåller VBA-makrot som du tänker signera. Se till att filen är sparad med ett makroaktiverat filtillägg (.xlsm eller .xlsb) innan du fortsätter.
  • Sätt in din säkra USB-maskinvara i en ledig USB-port på din dator. Denna token lagrar den privata nyckeln för ditt kodsigneringscertifikat. Låt den vara ansluten under hela signeringsprocessen.
  • Innan du öppnar Visual Basic-redigeraren, kontrollera att certifikatet från din USB-token känns igen av Windows. Öppna Internet-alternativ (sök efter ”Internet-alternativ” i Windows, eller öppna Internet Explorer och gå till Verktyg > Internet-alternativ). Klicka på fliken Innehåll och klicka sedan på knappen Certifikat.
  • Under fliken Personligt bör ditt kodsigneringscertifikat visas. Om det saknas, använd programvaran som tillhandahålls av din certifikatutfärdare (CA) för att ladda certifikatet från token till Windows. Först efter detta steg kommer Excel att kunna se certifikatet.
  • I Excel klickar du på fliken Utvecklare på menyfliksområdet. I avsnittet Kod klickar du på Visual Basic-ikonen. Alternativt kan editorn öppnas genom att trycka på tangenterna Alt + F11. Om fliken Utvecklare inte är synlig, högerklicka på var som helst på menyfliksområdet, välj Anpassa menyfliksområdet, markera kryssrutan Utvecklare i den högra panelen och klicka på OK.
  • Starta den digitala signaturprocessen i Visual Basic Editor. Från den översta menyraden, klicka på Verktyg och välj sedan Digital signatur från rullgardinsmenyn. En liten dialogruta visas som indikerar att projektet för närvarande inte är signerat.
  • Välj ditt kodsigneringscertifikat. I dialogrutan Digital signatur klickar du på knappen Välj…. Ett nytt fönster med titeln Välj certifikat öppnas och listar alla digitala certifikat som är tillgängliga på din dator, inklusive certifikatet som motsvarar den privata nyckeln lagrad på din USB-token. Välj rätt certifikat från listan och klicka på OK.
  • Dialogrutan för digital signatur kommer nu att visa namnet på det certifikat du just valde. Klicka på OK igen för att bifoga den digitala signaturen till ditt VBA-projekt.
  • Stäng Visual Basic Editor och återgå till Excel. Spara filen omedelbart genom att trycka på tangenterna Ctrl + S eller genom att gå till Arkiv > Spara. När åtgärden sparas kan en lösenordsuppmaning visas; ange lösenordet för ditt kodsigneringscertifikat (lösenordet som är kopplat till din USB-token eller .PFX-fil). Efter att ha angett lösenordet slutförs lagringen och signaturen bäddas in.
  • Inget officiellt bekräftelsemeddelande visas av Excel efter en framgångsrik signatur. För att bekräfta, stäng Excel-arbetsboken helt, öppna den igen och kontrollera att inget gult säkerhetsvarningsfält visas (eller att varningen visar ditt utgivarnamn som betrodd). Du kan också öppna Visual Basic Editor igen, gå igen till Verktyg > Digital signatur och se att ditt certifikat nu är listat som den aktiva signaturen.
  • Lägg till en tidsstämpel för att bevara signaturens giltighet efter certifikatets utgång.
    • Öppna Kommandotolken (Admin) eller Windows Terminal (Admin) programmet.
    • Gå till mappen SignTool (t.ex. C:\Program Files (x86)\Windows Kits\10\bin\10.0.xxxxx.0\x86).
    • Kör: signtool sign /tr http://timestamp.url /td SHA256 /fd SHA256 /a “path\to\yourfile.exe”

En betrodd tidsstämpelserver-URL (som http://timestamp.digicert.com eller http://timestamp.comodoca.com/authenticode) bör användas. Efter att ha kört det kommandot visas ett bekräftelsemeddelande om tidsstämpeln har lagts till.

Så här signerar du ett makro digitalt i Excel:
Öppna din makroaktiverade Excel-arbetsbok och tryck på tangenterna Alt + F11 för att starta Visual Basic Editor. Från toppmenyn klickar du på Verktyg → Digital signatur och klickar sedan på Välj för att välja ditt kodsigneringscertifikat (antingen självskapat certifikat via SelfCert.exe eller ett kommersiellt certifikat lagrat på en USB-token). Klicka på OK två gånger, stäng redigeraren och spara Excel-arbetsboken omedelbart. Signaturen är nu kopplad till ditt VBA-projekt, och alla framtida ändringar av koden kommer att bryta den.

Så här loggar du digitalt i Excel:

Digital signering i Excel innebär vanligtvis att man signerar hela arbetsboken (inte bara makron) med en synlig digital signaturrad eller en osynlig signatur. Infoga en signaturrad via knappen Infoga > Text > Signaturrad och fyll sedan i den. För en osynlig digital signatur (bevis på äkthet utan en synlig linje), gå till Arkiv > Info > Skydda arbetsbok > Lägg till en digital signatur. Båda metoderna kräver ett giltigt digitalt certifikat och bekräftar att Excel-arbetsboken inte har ändrats efter signering.

Nyaste artiklar

Relaterade artiklar