توضح هذه المقالة كيف يمكنك توقيع مشروع ماكرو رقميا على Windows باستخدام شهادة. إذا لم يكن لديك شهادة رقمية بالفعل، فستحتاج إلى الحصول على شهادة.
تلميح: لاستخدام مشاريع الماكرو أو اختبارها على الكمبيوتر الخاص بك، يمكنك إنشاء شهادة توقيع ذاتي باستخدام أداة Selfcert.exe. ستجد المزيد من التفاصيل حول ذلك أدناه.
الحصول على شهادة رقمية
يمكنك الحصول على شهادة رقمية من مرجع مصدق تجاري (CA) أو من مسؤول الأمان الداخلي أو محترف تكنولوجيا المعلومات (IT).
لمعرفة المزيد حول المراجع المصدقة التي تقدم خدمات لمنتجات Microsoft، راجع قائمة أعضاء برنامج شهادات جذر Microsoft.
بما أن الشهادة الرقمية التي تقوم بإنشائها لا يتم إصدارها من قِبل مرجع رسمي موثوق به، فإن مشاريع الماكرو التي يتم توقيعها باستخدام مثل هذه الشهادة تُعرف كـ مشاريع موقعّة ذاتياً. يثق Microsoft Office بالشهادة الموقعّة ذاتياً فقط على كمبيوتر يتضمن شهادة التوقيع الذاتي مضافةً إلى مجلد "الشهادات الجذر الموثوقة" في مخزن "الشهادات - المستخدم الحالي". وهذا يجعله جيدا للاختبار أو الاستخدام على جهازك الخاص أو عدد صغير جدا من الأجهزة التي تديرها، ولكنه ليس جيدا جدا لتوزيع مشاريع وحدات الماكرو على أشخاص آخرين.
إنشاء شهادة التوقيع الذاتي
عرض الشهادة في مخزن الشهادات الشخصية
-
افتح Microsoft Edge.
-
أدخل edge://settings/privacy في شريط العناوين.
-
مرر لأسفل إلى قسم الأمان وحدد إدارة الشهادات.
توقيع مشروع ماكرو VBA رقميا في Excel أو PowerPoint أو Publisher أو Visio أو Outlook أو Word
-
افتح الملف الذي يحتوي على مشروع الماكرو الذي تريد توقيعه.
-
ضمن علامة التبويب المطور، في المجموعة تعليمات برمجية، انقر فوق Visual Basic.
ملاحظة: في حالة عدم توفر علامة التبويب "المطور": انقر فوق علامة التبويب ملف. وانقر فوق خيارات. انقر فوق تخصيص الشريط. ومن القائمة تخصيص الشريط، انقر فوق المطور ثم فوق موافق.
-
في Visual Basic، من القائمة أدوات، انقر فوق التوقيع الرقمي.
-
يظهر مربع الحوار التوقيع الرقمي.
-
حدد شهادة ثم انقر فوق موافق.
ملاحظة: إذا لم تحدد شهادة رقمية أو إذا أردت استخدام شهادة أخرى، فانقر فوق اختيار. حدد شهادة ثم انقر فوق موافق.
إضافة طابع زمني إلى توقيعك
عندما يقوم الأشخاص بتشغيل ماكرو VBA الخاص بك، سيتحقق Office من التوقيع والشهادة التي تم توقيعه بها. تعني إضافة طابع زمني إلى توقيعك أنه سيستمر التعامل مع الماكرو على أنه موقع، حتى بعد انتهاء صلاحية الشهادة، طالما لم يتم إبطال الشهادة. يمكن أن يقلل هذا من تعطيل المستخدمين.
لا يزال من الممكن استخدام الشهادة التي انتهت صلاحيتها فقط للتحقق من صحة التعليمات البرمجية، ولا يمكن استخدامها للتوقيع على تعليمات برمجية جديدة.
لإضافة طابع زمني، تحتاج إلى إضافة ثلاثة مفاتيح إلى السجل الخاص بك.
إنذار: قد يؤدي تحرير السجل بشكل غير صحيح إلى تلف النظام بشكل كبير. قبل إجراء تغييرات على السجل، نوصي بإجراء نسخ احتياطي لأي بيانات ذات قيمة على الكمبيوتر.
مفتاح |
النوع |
الوصف |
---|---|---|
HKCU\Software\Microsoft\VBA\Security\TimeStampURL |
REG_SZ |
عنوان URL لخادم الطابع الزمني المفضل لديك. (مطلوب) |
HKCU\Software\Microsoft\VBA\Security\TimeStampRetryCount |
REG_DWORD |
عدد المرات التي سيحاول فيها محرر Visual Basic الاتصال بخادم الطابع الزمني قبل الفشل. (اختياري - إذا لم تقم بتعيين هذا، فسيحاول محرر Visual Basic الاتصال بالخادم مرة واحدة فقط) |
HKCU\Software\Microsoft\VBA\Security\TimeStampRetryDelay |
REG_DWORD |
عدد الثوان (بالمللي ثانية) سينتظر محرر Visual Basic بين إعادة المحاولة للاتصال بخادم الطابع الزمني. (اختياري - إذا لم تقم بتعيين هذا، فلن يكون هناك أي تأخير بين أي عمليات إعادة محاولة) |
بمجرد إضافة إدخال TimeStampURL قيد العمل، سيقوم محرر Visual Basic تلقائيا بإضافة طابع زمني في أي وقت تقوم فيه بتوقيع ماكرو رقميا.
ملاحظات إضافية
-
يوصى بتوقيع وحدات الماكرو فقط بعد اختبار الحل الخاص بك وجاهز للتوزيع: عند تغيير التعليمات البرمجية في مشروع ماكرو موقع بأي شكل من الأشكال، تتم إزالة توقيعه الرقمي. ومع ذلك، إذا كانت لديك الشهادة الرقمية الصحيحة التي تم استخدامها مسبقاً لتوقيع المشروع على الكمبيوتر، فإنه تتم إعادة توقيع مشروع الماكرو تلقائياً عند حفظه.
-
تتمثل إحدى الطرق لمنع المستخدمين من تغيير مشروع الماكرو عن طريق الخطأ وإبطال توقيعك في تأمين مشروع الماكرو قبل تطبيق التوقيع. يضمن توقيعك الرقمي عدم العبث بالمشروع منذ توقيعك عليه، ولكنه لا يثبت أنك كتبت المشروع. حتى إذا قمت بتأمين مشروع الماكرو الخاص بك، فقد يظل بإمكان مستخدم آخر استبدال توقيعك بتوقيع آخر. يمكن لمسؤولي الشركات أيضا إعادة توقيع القوالب والوظيفة الإضافية لضمان تشغيل المحتوى المعتمد فقط على أجهزة كمبيوتر الشركة.
-
إذا أنشأت وظيفة إضافية تضيف تعليمات برمجية إلى مشروع ماكرو، فمن الضروري أن تحدد التعليمات البرمجية ما إذا تم توقيع المشروع رقمياً أم لا فضلاً عن إعلام المستخدمين بالنتائج الناجمة عن تغيير المشروع الموقّع قبل المتابعة.
-
قد يواجه المستخدمون الذين يستخدمون الشهادات التجارية كتلا بسبب قيود خوارزميات التجزئة المدعومة في التوقيع. يمكنك إضافة قيمة مفتاح تسجيل DWORD V1HashEnhanced لاختيار خوارزمية تجزئة أخرى، ضمن HKCU\SOFTWARE\Microsoft\VBA\Security مع قواعد خوارزمية القيمة (1 إلى SHA1، 2 إلى SHA256، 3 إلى SHA384، 4 إلى SHA512 وغيرها إلى MD5). يتوفر هذا الإعداد في أحدث إصدارات قناة CC.
تعرّف على المزيد
تمكين وحدات الماكرو أو تعطيلها في ملفات Microsoft 365
ملاحظة: تم إنشاء هذه المقالة بواسطة شخص بمساعدة الذكاء الاصطناعي (AI).