In dit artikel wordt beschreven hoe u een macroproject digitaal ondertekent met een certificaat. Als u nog geen digitaal certificaat hebt, moet u er een hebben.
Tip: Als u macroprojecten op uw eigen computer wilt gebruiken of testen, kunt u uw eigen zelfondertekend certificaat maken met behulp van het hulpprogramma Selfcert.exe.
Een digitaal certificaat ophalen
U kunt een digitaal certificaat aanvragen bij een commerciële certificeringsinstantie (CA) of bij uw interne beveiligingsadministrator of een IT-professional.
Zie de lijst met leden van het Microsoft-basiscertificaatprogramma voor meer informatie over certificeringsinstanties die services voor Microsoft-producten aanbieden.
Aangezien een door u ontworpen digitaal certificaat niet door een officiële, vertrouwde certificeringsinstantie is uitgegeven, worden macroprojecten die met dergelijke certificaten worden ondertekend zelfondertekende projecten genoemd. Zelfondertekende certificaten worden alleen door Microsoft Office vertrouwd als dat zelfondertekende certificaat is toegevoegd aan de map met vertrouwde basiscertificeringsinstanties in het certificaatarchief van de huidige gebruiker. Dit maakt het geschikt voor het testen of gebruiken op uw eigen computer of een zeer klein aantal machines dat u beheert, maar niet erg goed voor het distribueren van macro's projecten naar anderen.
Zelfondertekend certificaat maken
- Welke versie van Windows gebruikt u?
- Windows 10 of nieuwer
- Windows 8
-
Ga naar C:\Program Files (x86)\Microsoft Office\root\Office16.
Tip: Als u deze niet in deze map vindt, probeert u C:\Program Files\Microsoft Office\root\Office16
-
Klik op SelfCert.exe. Het vak Digitaal certificaat maken wordt weergegeven.
-
Typ een beschrijvende naam voor het certificaat in het vak De naam van het certificaat.
-
Klik op OK.
-
Klik op OK als het bericht SelfCert is voltooid wordt weergegeven.
-
Ga naar C:\Program Files\Microsoft Office\<Office-versie>\.
-
Klik op SelfCert.exe. Het vak Digitaal certificaat maken wordt weergegeven.
-
Typ een beschrijvende naam voor het certificaat in het vak De naam van het certificaat.
-
Klik op OK.
-
Klik op OK als het bericht SelfCert is voltooid wordt weergegeven.
Het certificaat weergeven in het archief persoonlijke certificaten
-
Open Microsoft Edge.
-
Voer edge://settings/privacy in de adresbalk in.
-
Schuif omlaag naar de sectie Beveiliging en selecteer Certificaten beheren.
Een macroproject digitaal ondertekenen in Excel, PowerPoint, Publisher, Visio, Outlook of Word
-
Open het bestand met het macroproject dat u wilt ondertekenen.
-
Klik op het tabblad Ontwikkelaars in de groep Code op Visual Basic.
Opmerking: Als het tabblad Ontwikkelaar niet beschikbaar is: klik op het tabblad Bestand. Klik op Opties. Klik op Lint aanpassen. Klik in de lijst Het lint aanpassen op Ontwikkelaar en klik op OK.
-
Klik in Visual Basic in het menu Extra op Digitale handtekening.
-
Het dialoogvenster Digitale handtekening wordt weergegeven.
-
Selecteer een certificaat en klik op OK.
Opmerking: Klik op Kiezen als u geen digitaal certificaat hebt geselecteerd of een ander certificaat wilt gebruiken. Selecteer een certificaat en klik op OK.
Een tijdstempel toevoegen aan uw handtekening
Voor extra beveiliging is het belangrijk om een tijdstempel toe te voegen, zodat andere gebruikers kunnen controleren of het certificaat dat voor de handtekening wordt gebruikt, nog steeds geldig is.
Als u een tijdstempel wilt toevoegen, moet u drie sleutels toevoegen aan uw register.
Let op: Het onjuist bewerken van het register kan aanzienlijke schade toebrengen aan uw systeem. Voordat u wijzigingen aanbrengt in het register, moet u een back-up maken van belangrijke gegevens op de computer.
Toets |
Type |
Beschrijving |
---|---|---|
HKCU\Software\Microsoft\VBA\Security\TimeStampURL |
REG_SZ |
De URL van de tijdstempelserver van uw voorkeur. (Vereist) |
HKCU\Software\Microsoft\VBA\Security\TimeStampRetryCount |
REG_DWORD |
Het aantal keren dat de Visual Basic Editor verbinding probeert te maken met de tijdstempelserver voordat het mislukt. (Optioneel : als u dit niet instelt, probeert Visual Basic Editor slechts eenmaal contact op te maken met de server) |
HKCU\Software\Microsoft\VBA\Security\TimeStampRetryDelay |
REG_DWORD |
Het aantal seconden (in milliseconden) dat de Visual Basic Editor wacht tussen het opnieuw proberen om verbinding te maken met de tijdstempelserver. (Optioneel : als u dit niet instelt, is er geen vertraging tussen eventuele nieuwe pogingen) |
Zodra u een werkende TimeStampURL-vermelding hebt toegevoegd, voegt Visual Basic Editor automatisch een tijdstempel toe wanneer u een macro digitaal ondertekent.
Aanvullende notities
-
Het is raadzaam om macro's pas te ondertekenen nadat uw oplossing is getest en klaar is voor distributie: wanneer code in een ondertekend macroproject op een of andere manier wordt gewijzigd, wordt de digitale handtekening verwijderd. Als u echter over het geldige digitale certificaat beschikt waarmee het project eerder is ondertekend op de computer, wordt het macroproject automatisch opnieuw getekend als u het opslaat.
-
Vergrendel de macro voordat u deze ondertekent als u wilt voorkomen dat gebruikers van de oplossing het macroproject per ongeluk wijzigen en uw handtekening ongeldig maken. Een digitale handtekening geeft aan dat u garandeert dat er niet met het project is geknoeid sinds u het hebt ondertekend. De digitale handtekening vormt geen bewijs dat u het project hebt geschreven. De vergrendeling van een macro kan daarom niet voorkomen dat een andere gebruiker uw digitale handtekening vervangt door een andere digitale handtekening. In een onderneming kunnen administrators sjablonen en invoegtoepassingen ondertekenen om te bepalen wat gebruikers op hun computer mogen uitvoeren.
-
Als u een invoegtoepassing maakt waarmee code wordt toegevoegd aan een macroproject, wordt met deze code gecontroleerd of het project een digitale handtekening heeft en worden de gebruikers ingelicht over de gevolgen van het wijzigen van een getekend project, voordat ze verdergaan.