U ovom se članku opisuje kako digitalno potpisati makronaredbeni projekt u sustavu Windows pomoću potvrda. Ako još nemate digitalni certifikat, morat ćete ga nabaviti.
Savjet: Da biste na vlastitom računalu koristili ili testirajte projekte makronaredbi, stvorite vlastiti certifikat za samopotpisivanje pomoću alata za Selfcert.exe. Dodatne pojedinosti potražite u nastavku.
Nabavite digitalni certifikat
Digitalni certifikat možete dobiti od komercijalne ustanove za izdavanje certifikata (CA), od administratora interne sigurnosti ili stručnjaka za informacijsku tehnologiju (IT).
Dodatne informacije o ustanovama za izdavanje certifikata koje nude usluge za Microsoftove proizvode potražite na popisu članova Microsoftova programa korijenskih certifikata.
Budući da digitalni certifikat koji ste stvorili nije izdala pouzdana službena ustanova za izdavanje certifikata, makronaredbe koje su potpisane tim certifikatom poznate su pod nazivom samopotpisane makronaredbe. Microsoft Office samopotpisani certifikat smatra pouzdanim samo na računalu na kojem je takav certifikat dodan u mapu Pouzdani korijenski certifikati u spremištu Certifikati – trenutni korisnik. To ga čini dobrim za testiranje ili korištenje na vlastitom računalu ili vrlo malom broju računala kojima upravljate, ali ne i vrlo dobro za distribuciju makronaredbi projekata drugim osobama.
Stvaranje samopotpisane potvrde
Prikaz certifikata u spremištu osobnih certifikata
-
Otvorite Microsoft Edge.
-
Unesite edge://settings/privacy u adresnu traku.
-
Pomaknite se prema dolje do odjeljka Sigurnost i odaberite Upravljanje certifikatima.
Digitalno potpisivanje VBA makronaredbi u programima Excel, PowerPoint, Publisher, Visio, Outlook ili Word
-
Otvorite datoteku u kojoj se nalazi makronaredba koju želite potpisati.
-
Na kartici Programiranje u grupi Kod kliknite Visual Basic.
Napomena: Ako kartica Programiranje nije dostupna, učinite sljedeće: kliknite karticu Datoteka. Kliknite Mogućnosti. Kliknite Prilagodba vrpce. Na popisu Prilagodba vrpce kliknite Programiranje, a zatim U redu.
-
U programu Visual Basic na izborniku Alati kliknite Digitalni potpis.
-
Pojavit će se dijaloški okvir Digitalni potpis.
-
Odaberite certifikat i kliknite U redu.
Napomena: Ako niste odabrali digitalni certifikat ili pak želite koristiti neki drugi, kliknite Odaberi. Odaberite certifikat i kliknite U redu.
Dodavanje vremenske pečate u potpis
Kada drugi korisnici pokreću vašu VBA makronaredbu, Office će provjeriti potpis i certifikat s kojima je potpisana. Dodavanje vremenske pečate u potpis znači da će se makronaredba i dalje tretirati kao potpisana, čak i nakon isteka certifikata, sve dok certifikat nije opozvan. To može smanjiti prekide u radu s korisnicima.
Certifikat koji je tek istekao i dalje se može koristiti za provjeru valjanosti koda, ali se ne može koristiti za potpisivanje novog koda.
Da biste dodali vremensku oznaku, morate dodati tri ključa u registar.
Oprez: Nepravilno uređivanje registra može ozbiljno oštetiti sustav. Preporučujemo da prije promjene registra sigurnosno kopirate sve vrijedne podatke na računalu.
Tipka |
Vrsta |
Opis |
---|---|---|
HKCU\Software\Microsoft\VBA\Security\TimeStampURL |
REG_SZ |
URL preferiranog poslužitelja vremenskih oznaka. (Obavezno) |
HKCU\Software\Microsoft\VBA\Security\TimeStampRetryCount |
REG_DWORD |
Koliko će se puta Visual Basic Editor pokušati povezati s poslužiteljem vremenskih oznaka prije neuspjeha. (Neobavezno – ako to ne postavite, Visual Basic Editor pokušat će se obratiti poslužitelju samo jedanput) |
HKCU\Software\Microsoft\VBA\Security\TimeStampRetryDelay |
REG_DWORD |
Broj sekundi (u milisekundama) koje Visual Basic Editor čeka između ponovnog pokušaja povezivanja s poslužiteljem vremenske oznake. (Neobavezno – ako to ne postavite, neće biti kašnjenja između ponovnih pokušaja) |
Kada dodate unos Radnog vremenaStampURL, Visual Basic Editor automatski će dodati vremensku oznaku svaki put kada digitalno potpišete makronaredbu.
Dodatne bilješke
-
Preporučuje se da makronaredbe potpišete tek nakon što je rješenje testirano i spremno za distribuciju: kada se kod u potpisanom makronaredbom promijeni na bilo koji način, digitalni se potpis uklanja. No ako imate valjani digitalni certifikat koji ste već koristili za potpisivanje tog projekta na računalu, makronaredba se automatski ponovno potpisuje nakon što je spremite.
-
Jedan od načina da korisnicima onemogućite slučajno mijenjanje makronaredbi i nevaljan potpis zaključavanje je makronaredbe prije primjene potpisa. Digitalni potpis jamči da projekt nije neovlašteno mijenjan nakon što ste ga potpisali, ali ne dokazuje da ste vi napisali projekt. Čak i ako ste zaključali makronaredbu, drugi korisnik možda i dalje može zamijeniti vaš potpis drugim potpisom. Administratori tvrtke mogu i ponovno potpisati predloške i dodatke da bi osigurali pokretanje samo odobrenog sadržaja na računalima tvrtke.
-
Ako stvorite dodatak koji u makronaredbu dodaje kod, taj kod treba odrediti je li projekt digitalno potpisan i obavijestiti korisnike o posljedicama promjene potpisanog projekta prije nego što nastave.
-
Korisnici koji koriste komercijalne certifikate mogu naići na blokove zbog ograničenja podržanih algoritama raspršivanja prilikom potpisivanja. Možete dodati vrijednost ključa registra DWORD V1HashEnhanced da biste odabrali drugi algoritam raspršivanja, u odjeljku HKCU\SOFTWARE\Microsoft\VBA\Security s pravilima algoritama vrijednosti (od 1 do SHA1, 2 u SHA256, 3 u SHA384, 4 u SHA512 i druge u MD5). Ta je postavka dostupna u najnovijim verzijama kanala CC.
Dodatne informacije
Omogućivanje i onemogućivanje makronaredbi u datotekama okruženja Microsoft 365
Napomena: Ovaj je članak stvorila osoba uz pomoć umjetne inteligencije (AI).