Bu makalede, sertifika kullanarak Windows'ta bir makro projesi nasıl dijital olarak imzalayabileceğiniz açıklanır. Henüz bir dijital sertifikanız yoksa, bir sertifika almanız gerekir.
İpucu: Makro projelerini kendi bilgisayarınızda kullanmak veya test etmek için, Selfcert.exe aracını kullanarak kendi otomatik imzalama sertifikanızı oluşturabilirsiniz. Bu konuyla ilgili daha fazla ayrıntıyı aşağıda bulabilirsiniz.
Dijital sertifika alma
Dijital sertifikayı ticari sertifika yetkilisinden (CA), iç güvenlik yöneticinizden veya bilgi teknolojisi (BT) uzmanından alabilirsiniz.
Microsoft ürünleri için hizmet sunan sertifika yetkilileri hakkında daha fazla bilgi edinmek için Microsoft kök sertifika programı üyelerinin listesine bakın.
Kendi oluşturduğunuz dijital sertifika resmi bir güvenilir sertifika yetkilisi tarafından verilmediğinden, bu tür bir sertifika kullanılarak imzalanan makro projeleri, otomatik olarak imzalanan projeler olarak bilinir. Microsoft Office, otomatik olarak imzalanan bir sertifikaya yalnızca otomatik imzalanan sertifikayı Sertifikalar - Geçerli Kullanıcı deposundaki Güvenilen Kök Sertifika klasörüne eklemiş olan bir bilgisayarda güvenir. Bu, kendi makinenizde veya yönettiğiniz çok az sayıda makinede test etmek veya kullanmak için iyi olur, ancak makro projelerini diğer kişilere dağıtmak için çok iyi değildir.
Otomatik olarak imzalanan sertifika oluşturma
Kişisel Sertifikalar deposunda sertifikayı görüntüleme
-
Microsoft Edge’i açın.
-
Adres çubuğuna edge://settings/privacy girin.
-
Aşağı kaydırarak Güvenlik bölümüne gelin ve Sertifikaları yönet'i seçin.
Excel, PowerPoint, Publisher, Visio, Outlook veya Word'de VBA makro projelerini dijital olarak imzalama
-
İmzalamak istediğiniz makro projesinin bulunduğu dosyayı açın.
-
Geliştirici sekmesinin Kod grubunda Visual Basic'e tıklayın.
Not: Geliştirici sekmesi kullanılamıyorsa: Dosya sekmesine tıklayın. Seçenekler'e tıklayın. Şeridi Özelleştir'e tıklayın. Şeridi Özelleştirin listesinde Geliştirici'ye ve ardından Tamam'a tıklayın.
-
Visual Basic uygulamasında, Araçlar menüsünde, Dijital İmza seçeneğine tıklayın.
-
Dijital İmza iletişimi görünür.
-
Bir sertifika seçin ve Tamam seçeneğine tıklayın.
Not: Dijital bir sertifika seçmediyseniz veya başka bir sertifika kullanmak istiyorsanız, Seç düğmesine tıklayın. Bir sertifika seçin ve Tamam seçeneğine tıklayın.
İmzanıza zaman damgası ekleme
Kişiler VBA makronuzu çalıştırdığında, Office imzayı ve imzalandığı sertifikayı denetler. İmzanıza zaman damgası eklemek, sertifika iptal edilmediği sürece sertifikanızın süresi dolduktan sonra bile makronuzun imzalı olarak değerlendirilmeye devam edeceği anlamına gelir. Bu, kullanıcıların kesintisini azaltabilir.
Yalnızca süresi dolmuş bir sertifika kodu doğrulamak için kullanılabilir, yalnızca yeni kodu imzalamak için kullanılamaz.
Zaman damgası eklemek için kayıt defterinize üç anahtar eklemeniz gerekir.
Dikkat: Kayıt defterinin yanlış düzenlenmesi sisteminize ciddi şekilde zarar verebilir. Kayıt defterinde değişiklik yapmadan önce bilgisayarınızdaki tüm önemli verileri yedeklemenizi öneririz.
Tuş |
Tür |
Açıklama |
---|---|---|
HKCU\Software\Microsoft\VBA\Security\TimeStampURL |
REG_SZ |
Tercih ettiğiniz zaman damgası sunucusunun URL'si. (Gerekli) |
HKCU\Software\Microsoft\VBA\Security\TimeStampRetryCount |
REG_DWORD |
Visual Basic Düzenleyicisi'nin başarısız olmadan önce zaman damgası sunucusuna bağlanmayı deneme sayısı. (İsteğe bağlı - Bunu ayarlamazsanız, Visual Basic Düzenleyicisi sunucuyla yalnızca bir kez iletişim kurmaya çalışır) |
HKCU\Software\Microsoft\VBA\Security\TimeStampRetryDelay |
REG_DWORD |
Visual Basic Düzenleyicisi'nin zaman damgası sunucusuna bağlanmak için yeniden deneme arasında bekleyeceği saniye sayısı (milisaniye cinsinden). (İsteğe bağlı - Bunu ayarlamazsanız, yeniden denemeler arasında gecikme olmaz) |
Çalışan bir TimeStampURL girdisi ekledikten sonra, makroyu dijital olarak imzaladığınızda Visual Basic Düzenleyicisi otomatik olarak bir zaman damgası ekler.
Ek notlar
-
Makroları yalnızca çözümünüz test edildikten ve dağıtıma hazır olduktan sonra imzalamanız önerilir: İmzalı bir makro projesindeki kod herhangi bir şekilde değiştirildiğinde dijital imzası kaldırılır. Ancak daha önce bilgisayarınızda projeyi imzalamak için kullanılan geçerli bir sertifika varsa, makro projesini kaydettiğinizde proje otomatik olarak yeniden imzalanır.
-
Kullanıcıların makro projenizi yanlışlıkla değiştirmesini ve imzanızı geçersiz kılmasını önlemenin bir yolu, imzayı uygulamadan önce makro projesini kilitlemektir. Dijital imzanız, imzaladığınızdan beri projenin üzerinde oynanmamasını sağlar, ancak projeyi yazdığınızı kanıtlamaz. Makro projenizi kilitlemiş olsanız bile, başka bir kullanıcı imzanızı başka bir imzayla değiştirebilir. Şirket yöneticileri, şirket bilgisayarlarında yalnızca onaylanan içeriğin çalıştırıldığından emin olmak için şablonları ve eklentileri yeniden imzalayabilir.
-
Makro projesine kod ekleyen bir eklenti oluşturursanız, kodunuz, projenin dijital olarak imzalanmış olup olmadığını belirlemeli ve kullanıcıyı, imzalı bir projeyi değiştirmeyi sürdürmeden önce bunun sonuçları hakkında uyarmalıdır.
-
Ticari sertifika kullanan kullanıcılar, imzalamada desteklenen karma algoritmaların sınırlaması nedeniyle bloklarla karşılaşabilir. Değer algoritması kurallarıyla HKCU\SOFTWARE\Microsoft\VBA\Security altında başka bir karma algoritma seçmek için bir DWORD kayıt defteri anahtar-değeri V1HashEnhanced ekleyebilirsiniz (MD5'e SHA1'e 1, SHA256'ya 2, SHA384'e 3, SHA512'ye 4 ve diğerleri). Bu ayar CC kanalının en son sürümlerinde kullanılabilir.
Daha fazla bilgi edinin
Microsoft 365 dosyalarında makroları etkinleştirme veya devre dışı bırakma
Not: Bu makale yapay zeka (AI) yardımı ile bir kişi tarafından oluşturuldu.