Vor einiger Zeit habe ich schon einen Artikel gebloggt, der Ihnen zeigt, wie Sie ein selbstsegniertes Zertifikate erstellen können um Ihren Rechner bzw. Daten vor Vieren zu schützen. Ausschlaggebend für meinen damaligen Artikel war der Computervirus Locky, der Ihre Daten verschlüsselt um dann ein Lösegeld von dem entsprechenden Opfer zu verlangen. In einer der ersten Versionen wurde ein VBA-Script benutzt, was dann im Hintergrund die schädliche Software nachgeladen hat. Um dies zu vermeiden, sind nun viele Unternehmen dazu übergegangen, VBA-Code generell zu verbieten. Was natürlich für viele Anwender nicht schön ist, da hiermit viele Individuallösungen erstellt werden können, die so in der Standardversion von Office und Project nicht möglich sind. Auch ich nutze in vielen Unternehmen VBA in Project, da hier Individuallösungen im Projektmanagement benötigt werden. In diesem Blog-Artikel möchte ich Ihnen nun zeigen, wie Sie über eine Active Directory CS (Certificate Services) ein Codeschutz Zertifikate erstellen können und der User diese dann auf seinem Rechner in den Code einbinden kann. In meinem ersten Blog-Beitrag werden wir auf das entsprechende Zertifikate vorbereiten und in meinem zweiten Blog-Beitrag werden wir dieses dann auf dem Client einbinden. Legen wir also los.
Voraussetzungen für diese Bespiel:
- Einen Server mit Microsoft Server 2012 R2 mit installierten Active Directory
- Einen Server mit Microsoft Server 2012 R2 und installiertem Active Directroy Certificate Services (AD CS)
- Einen Client mit Microsoft Windows 10 und installierten Project für Office 365 oder Project 2016
Bemerkung: Der Schutz ist nicht automatisiert. Jeder User muss dennoch überlegen, ob er den Code ausführen möchte oder nicht. Dies bedeutet auch für den Administrator bzw. das Unternehmen der Aufklärungspflicht, wie mit der Methode gearbeitet werden soll.
Melden Sie sich an Ihrem Server, der die AD CS hostet an. Wechseln Sie auf das Desktop und gehen Sie mit der rechten Maustaste auf den Windows-Button. Wählen Sie im Kontextmenü den Eintrag “Ausführen”. Geben Sie nun den Befehl “certerv.msc” ein. Klicken Sie anschließend “OK” oder drücken Sie “Enter”.
Als nächstes müssen Sie eine neue Zertifikatvorlage erstellen. Expandieren Sie hierzu die Ordnerstruktur der AD CS indem Sie auf Ihre angezeigte CA klicken. Klicken Sie nun mit der Maus auf den Ordner “Zertifikatvorlage” und klicken Sie dann auf die rechte Maustaste. Wählen Sie im Kontextmenü den Eintrag “Verwalten”.
Wählen Sie nun die Zertifikatvorlage “Codesegnatur” aus. Klicken Sie auf die Vorlage mit rechten Maustaste und wählen Sie im Kontextmenü den Eintrag “Vorlage duplizieren” aus.
Nun müssen Sie die folgenden Änderungen in dem Template anpassen. Klicken Sie auf den Reiter “Allgemein” und geben Sie in dem Feld “Vorlagenanzeigename” ein Namen für Ihr Zertifikat ein. In meinem Beispiel “VBAOffice”. Aktivieren Sie dann im unteren Bereich in der Registerkarte “Allgemein” die Option “Zertifikate in Active Directory veröffentlichen”. Wechseln Sie danach auf die Registerkarte “Anforderungsverarbeitung” und aktivieren Sie hier die Option “Export von privatem Schlüssel zulassen”. Gehen Sie dann auf die Registerkarte Sicherheit. Wählen Sie die Gruppe “Authentifizierte Benutzer” und wählen Sie im unteren Bereich die Option “Registrieren” und “Automatisch registrieren” aus. Im letzten Schritt wechseln Sie noch die Einstellung unter der Registerkarte “Antragstellername” in der Rubrik “Informationen mit alternativen Antragstellername einbeziehen:” von “UPN” auf “DNS-Name”. Klicken Sie danach auf “OK”.
Im nächsten Schritt müssen Sie nun die Zertifikatvorlage in Ihrer AD-CA veröffentlichen. Schließen Sie das Fenster der Zertifikatvorlagen. Klicken Sie dann mit der rechten Maustaste auf den Ordner Zertifikatvorlagen und wählen Sie im Kontextmenü den Eintrag “Neu – Auszustellende Zertifikatsvorlagen” aus. Selektieren Sie hier ihr zuvor erstelltes Zertifikat.
Nachdem wir nun das Zertifikat veröffentlicht haben, könne die User dies auf Ihrem Client einbinden. Dies werden wir dann in meinem zweiten Blog-Artikel durchführen.