In den letzten Jahren war das Thema Code Signing für Privatpersonen eine echte Herausforderung. Nachdem kostengünstige Anbieter wie startssl.com den Markt verlassen mussten, stiegen die Preise für Code Signing-Zertifikate erheblich. Viele Privatpersonen standen vor der Wahl, entweder tief in die Tasche zu greifen oder auf günstigere Optionen mit langen Laufzeiten von drei Jahren zurückzugreifen, die dann schnell eine hohe finanzielle Belastung darstellten. Zu allem Überfluss war der Registrierungsprozess bei den üblichen Certification Authorities (CAs) oft langwierig und komplex, was das Ganze zusätzlich erschwerte.
Doch nun gibt es endlich eine Lösung, die den Zugang zu Code Signing-Zertifikaten für Privatpersonen und kleinere Unternehmen vereinfacht und deutlich erschwinglicher macht: Microsoft Azure Trusted Signing. Dieser neue Zertifizierungsprozess, der sich noch im Preview-Status befindet, verspricht eine einfache und kostengünstige Möglichkeit, Software mit einem vertrauenswürdigen Code Signing-Zertifikat zu versehen. Während der Service also noch in der Vorschauphase befindet, und sich einzelne Dinge noch ändern können, lohnt es sich bereits jetzt, einen Blick darauf zu werfen, insbesondere angesichts der Tatsache, dass Microsoft mit Azure Trusted Signing eine vielversprechende Alternative zu den etablierten Anbietern bietet.
Das neue Angebot könnte für Entwickler und kleine Unternehmen ein Game Changer sein, da es nicht nur die Kosten senkt, sondern auch den Aufwand bei der Zertifikatsregistrierung erheblich reduziert. Wer bislang mit den hohen Preisen und dem bürokratischen Prozess der traditionellen CAs zu kämpfen hatte, kann nun auf eine benutzerfreundliche und erschwingliche Lösung hoffen. Auch wenn Microsoft das Programm noch weiterentwickeln wird, ist es definitiv ein Schritt in die richtige Richtung, um das Thema Code Signing für alle zugänglicher zu machen.
Identifikation und Erstellen des Zertifikats
Der Prozess zum eigenen Code Signing Zertifikat ist erfreulicherweise sehr einfach gehalten.
Hat man Azure Trusted Signing im Azure Portal einmal angelegt, so muss man sich zu erst identifizieren.
Hier zeigt sich anhand der fehlenden Übersetzungen, dass sich das Modul noch in der Preview-Phase befindet, was der Funktionalität allerdings keinen Abbruch tut.
Die Identifikation verläuft über den Anbieter au10tix.com, mit dem Microsoft aktuell zusammenarbeitet. Dabei scheint der Identifizierungsprozess weitgehend automatisiert zu sein. Waren früher noch manuelle Kontrollanrufe, eine Unmenge an Dokumenten etc. zur Identifikation notwendig, so kann man heute bequem per Smartphone seinen Ausweis fotografieren, ein Selfie uploaden und den Prozess somit innerhalb weniger Minuten abschließen.
Wurde die Identifikation erfolgreich abgeschlossen, kann man in wenigen Schritten das Zeritifkat erstellen. Um ein Zertifikat für die Signierung von Code zu erstellen, ist es wichtig ein Zertifikat mit dem Typ „Public Trust“ zu erstellen.
Signierungsprozess
Hier gibt es viele Wege, mit dem neuen Zertifikat den Signierungsprozess zu starten.
Ein einfacher Weg ist, über das Powershell Modul TrustedSigning zu gehen, welches hier zu finden ist: PowerShell Gallery | TrustedSigning 0.5.0
Dieses Modul bringt alles Notwendige für den Prozess selbst mit, bzw. installiert Abhängigkeiten automatisch nach.
Fallstrick privates Microsoft Konto
Wichtig für Privatpersonen mit privatem Microsoft Azure Account ist, dass der Signierungsprozess nicht mit dem Privatkonto funktioniert. Klingt unlogisch, da das Azure Trusted Signing Programm ja auch Privatpersonen unterstützt, ist aber so.
Hier gibt es allerdings eine leichte Lösung dafür. Man legt im privaten Microsoft einen neuen Tenant an, erzeugt sich dort einen neuen Benutzer (z.B. signer@tenantxyz.onmicrosoft.com) und berechtigt diesen auf das neu erstellte Zertifikat.
Dabei benötigt dieser lediglich das Recht „Trusted Signing Certificate Profile Signer“. Zu beachten ist, dass sich die Rollennamen in Microsoft Azure Preview-Programmen erfahrungsgemäß recht schnell auch ändern können.